首页 > 其他分享 >js事件处理

js事件处理

时间:2024-01-25 18:56:51浏览次数:36  
标签:function 事件处理 did js click addEventListener document 监听

事件监听

let did = document.getElementById("div-id");

监听函数

Dom0方式
did.onclick = function(e){};

Dom2方式
did.addEventListener("click",(e)=>{});

 元素.addEventListener("事件类型",处理函数,处理阶段bool);
//处理函数可传入 一个唯一的参数事件对象
//处理阶段,缺省false:冒泡阶段处理, true:捕获阶段调用

事件对象event

作为唯一的参数传入事件处理函数,有多种属性

|属性/方法 |说明|
|---------|-----|
|target     |事件发生的对象|
|currentTarget | 发起监听的对象|

this
this等同于event.currentTarget

html中监听

<input type="button" onclick="show()" />       <!-- 单击时,执行show() -->
<input type="button" onclick="show(event)" />  <!-- 传入当前事件对象 -->

js中监听

let did = document.getElementById("div-id")
方式一:
did.addEventListener("click",function(e){})
方式二:
did.onclick= function(e){}

window加载后执行
window.addEventListener("load",(e)=>{})
或 window.onload = function (){};

document加载后执行
document.addEventListener("DOMContentLoaded", function(){} );

解除监听

Dom0
did.onclick=null; //直接赋值为null

Dom2
Dom2中监听用箭头函数作为处理程序的,无法解除,如果需要解除,处理函数需要单独定义
function handle(e){}
did.addEventListener("click",handle) //注册监听
did.removedEventListener("click",handle) //移除监听,括号里的内容要和注册时一模一样

事件类型

标签:function,事件处理,did,js,click,addEventListener,document,监听
From: https://www.cnblogs.com/wakevol/p/17608091.html

相关文章

  • vue print.js 打印 此处打印不包含页面的页码 (打印方法二)
    <template><divclass="modalContainerprintAsset"ref="modalContainer"><divv-for="(items,index)intableDataPrint":key=indexstyle="page-break-after:always;zoom:1"ref="show......
  • C# Json序列化方案选择
    在C#中,进行JSON序列化和反序列化有多种方案可供选择,常用的是下面俩个System.Text.Json:这是.NETCore和.NET5中内置的JSON序列化和反序列化库,提供了高性能和低内存消耗的JSON处理能力。Newtonsoft.Json:这是一个流行的第三方JSON处理库,广泛用于Framework中的JSON序列化和反序列化......
  • js date时间设置
    //获取上个月最后一天vardate1=newDate();//console.log(date1);//当天date1.setDate(0);//setDate(day)方法用于设置一个月的某一天。day取1-31表示对应的天数,另外0为上一个月的最后一天,-1为上一个月最后一天之前的一天,32为下个月的第一天或者第二天//console.log(date1......
  • json序列
    json序列serialize.pasunitserialize;///<author>cxg2024-1-11</author>interfaceusessystem.Classes,System.SysUtils,System.JSON.Serializers;typeTSerial<T:record>=classpublic//还原classfunctionunjson(const......
  • big.js、bignumber.js 和 decimal.js 的区别
    简介        本文介绍3个JavaScript的数字处理第三方库的区别,它们是:big.js、bignumber.js和decimal.js。        这三个库都是同一个作者写的。官网网址​ ​https://github.com/MikeMcl/big.js/wiki​​大致对比包的大小        big.js<b......
  • decimal.JS 快速入门
    Decimal是什么想必大家在用js处理数字的加减乘除的时候,或许都有遇到过精度不够的问题还有那些经典的面试题02+0.1==0.3至于原因,那就是js计算底层用的是 IEEE754 ,精度上有限制那么,Decimal.js就是帮助我们解决js中的精度失准的问题。Decimal的引入与加减......
  • bigNumber.js使用介绍
    为什么要使用bigNumber.js为了解决精度丢失的问题,前端面试常见的一个问题就是‘0.1+0.2!=0.3’是为什么,0.1+0.2=0.30000000000000004,这在对数字精度要求比较高的项目中常常会出现bug,所以要使用bigNumber.js官网的解释:AJavaScriptlibraryforarbitrary-precisionarithmetic.(......
  • 为啥赋值他就报错JSONDecodeError?
    大家好,我是皮皮。一、前言前几天在Python最强王者交流群【哎呦喂 是豆子~】问了一个Python解析的问题。问题如下:大佬们谁有时间帮忙看下这个情况 好奇怪哦 为啥赋值他就报错JSONDecodeError:Expectingvalue:line1column1(char0)load是load文件,loads才是数据。......
  • 最佳实践:如何发现、修复和防止 Node.js 内存泄漏
    这篇文章将介绍什么是内存泄漏以及如何在Node.js应用程序中避免内存泄漏。什么是内存泄漏?在深入研究内存泄漏的细节之前,有必要先了解什么是内存生命周期。为已定义变量分配内存对分配的内存进行读、写等操作。使用后,释放分配的内存内存泄漏是指当程序没有释放它分配的内存时,即生......
  • 四、iframe切换+alert切换+鼠标操作+js操作
    1、iframe切换iframe是什么在网页中内嵌了另一个html怎么识别iframeF12打开开发者工具,在Element面板中鼠标点击要操作的元素会显示元素的完整路径,检查里面是否存在iframe,html切换进iframe当中去driver.switch_to.frame(几种方法去......