addeventlistener如何使用addEventListener添加事件

addeventlistener  时间:2021-06-19  阅读:()

addEventListener和on的区别

addEventListener和on的区别 为什么需要addEventListener? 先来看一个片段: html代码 <div id="box">追梦子</div> 用on的代码 1 window.onload = function(){ 2 var box = document.getElementById("box"); 3 box.onclick = function(){ 4 console.log("我是box1"); 5 } 6 box.onclick = function(){ 7 box.style.fontSize = "18px"; 8 console.log("我是box2"); 9 } 10 }      运行结果:“我是box2” 看到了吧,第二个onclick把第一个onclick给覆盖了,虽然大部分情况我们用on就可以完成我们想要的结果,但是有时我们又需要执行多个相同的事件,很明显如果用on完成不了我们想要的,那不用猜,你们肯定知道了,对!addEventListener可以多次绑定同一个事件并且不会覆盖上一个事件。

用addEventListener的代码 1 window.onload = function(){ 2 var box = document.getElementById("box"); 3 box.addEventListener("click",function(){ 4 console.log("我是box1"); 5 }) 6 box.addEventListener("click",function(){ 7 console.log("我是box2"); 8 }) 9 }     运行结果:我是box1          我是box2 addEventListenert方法第一个参数填写事件名,注意不需要写on,第二个参数可以是一个函数,第三个参数是指在冒泡阶段还是捕获阶段处理事件处理程序,如果为true代表捕获阶段处理,如果是false代表冒泡阶段处理,第三个参数可以省略,大多数情况也不需要用到第三个参数,不写第三个参数默认false 第三个参数的使用 有时候的情况是这样的 <body>   <div id="box">     <div id="child"></div>   </div> </body> 如果我给box加click事件,如果我直接单击box没有什么问题,但是如果我单击的是child元素,那么它是怎么样执行的?(执行顺序) 1 box.addEventListener("click",function(){ 2 console.log("box"); 3 }) 4 5 child.addEventListener("click",function(){ 6 console.log("child"); 7 })   执行的结果:         child         box 也就是说,默认情况事件是按照事件冒泡的执行顺序进行的。

如果第三个参数写的是true,则按照事件捕获的执行顺序进行的。

1 box.addEventListener("click",function(){ 2 console.log("box"); 3 },true) 4 5 child.addEventListener("click",function(){ 6 console.log("child"); 7 })   执行的结果:         box         child 事件冒泡执行过程:         从最具体的的元素(你单击的那个元素)开始向上开始冒泡,拿我们上面的案例讲它的顺序是:child->box 事件捕获执行过程:         从最不具体的元素(最外面的那个盒子)开始向里面冒泡,拿我们上面的案例讲它的顺序是:box->child

addEventListener和普通.onclick的区别

addEventListener是在 FireFox 上的用法。

? addEventListener的参数一共有三个,语法为:? element.addEventListener(type,listener,useCapture)? 详解? 其中element是要绑定函数的对象。

? type是事件名称,要注意的是"onclick"要改为"click","onblur"要改为"blur",也就是说事件名不要带"on"。

? listener当然就是绑定的函数了,记住不要跟括号? 最后一个参数是个布尔值,表示该事件的响应顺序,下面重点介绍一下addEventListener的第3个参数(useCapture)。

? userCapture若为true,则浏览器采用Capture,若为false则采用bubbing方式。

建议用false? 区别: 1 2 3 4 5 var?btn1Obj?=?document.getElementById("btn1");?? //element.addEventListener(type,listener,useCapture);?? btn1Obj.addEventListener("click",method1,false);?? btn1Obj.addEventListener("click",method2,false);?? btn1Obj.addEventListener("click",method3,false); 执行顺序为method1->method2->method3? 1 2 3 document.getElementById("btn").onclick?=?method1;?? document.getElementById("btn").onclick?=?method2;?? document.getElementById("btn").onclick?=?method3; 如果这样写,那么将会只有medhot3被执行

晕了addEventListener怎么往里面传参

//addEventListener的使用方式:<br><br>target.addEventListener(type,listener,useCapture);<br><br>//target:文档节点、document、window或XMLHttpRequest。

<br>//type:字符串,事件名称,不含“on”,比如“click”、“mouseover”、“keydown”等。

<br>//listener:实现了EventListener接口或者是JavaScript中的函数。

<br>//useCapture:是否使用捕捉,一般用false。

例如:document.getElementById(&quot;testText&quot;).addEventListener(&quot;keydown&quot;,function(event){alert(event.keyCode);},false);

如何使用addEventListener添加事件

使用attchEvent和detachEvent添加、注销事件; 火狐和其他浏览器都不支持,幸运的是他们都支持W3C标准的: addEventListener和removeEventListener方法 形如:element.addEventListener(type,listener,useCapture);//添加事件 element.removeEventListener(type,listener,useCapture);//注销事件 这里需要和attchEvent相区别,event直接写事件名即可,如click事件->object.addEventListener("click",listener,useCapture);

PQS彼得巧 年中低至38折提供台湾彰化HiNet线路VPS主机 200M带宽

在六月初的时候有介绍过一次来自中国台湾的PQS彼得巧商家(在这里)。商家的特点是有提供台湾彰化HiNet线路VPS主机,起步带宽200M,从带宽速率看是不错的,不过价格也比较贵原价需要300多一个月,是不是很贵?当然懂的人可能会有需要。这次年中促销期间,商家也有提供一定的优惠。比如月付七折,年付达到38折,不过年付价格确实总价格比较高的。第一、商家优惠活动年付三八折优惠:PQS2021-618-C...

Gigsgigscloud($9.8)联通用户优选日本软银VPS

gigsgigsCloud日本东京软银VPS的大带宽配置有100Mbps、150Mbps和200Mbps三种,三网都走软银直连,售价最低9.8美元/月、年付98美元。gigsgigscloud带宽较大延迟低,联通用户的好选择!Gigsgigscloud 日本软银(BBTEC, SoftBank)线路,在速度/延迟/价格方面,是目前联通用户海外VPS的最佳选择,与美国VPS想比,日本软银VPS延迟更...

ShineServers(5美元/月)荷兰VPS、阿联酋VPS首月五折/1核1G/50GB硬盘/3TB流量/1Gbps带宽

优惠码50SSDOFF 首月5折50WHTSSD 年付5折15OFF 85折优惠,可循环使用荷兰VPSCPU内存SSD带宽IPv4价格购买1核1G50G1Gbps/3TB1个$ 9.10/月链接2核2G80G1Gbps/5TB1个$ 12.70/月链接2核3G100G1Gbps/7TB1个$ 16.30/月链接3核4G150G1Gbps/10TB1个$ 18.10/月链接阿联酋VPSCPU内存SS...

addeventlistener为你推荐
素数算法有能写出所有素数的公式吗renderpartialHtml.RenderPartial 报错手机软件开发工具做安卓软件开发需要哪些工具?qq管家官网在qq电脑管家官网有个可以登录qq的。登录上了可以加速么?flash序列号flash激活序列号是?空间导航QQ空间中如何自定义导航?pass是什么锒行卡上的闪付pass是什么意思?asp论坛源码ASP论坛源代码为什么上传到ASP空间后打不开ps5教程跪求PS5 教程飞信发信息要钱吗用飞信发短信要钱吗?
顶级域名 cdn服务器 免费ftp空间 win8升级win10正式版 qingyun 刀片服务器是什么 秒杀汇 域名和空间 服务器托管什么意思 中国电信测速网 电信虚拟主机 电信托管 网通服务器 阿里云邮箱登陆地址 注册阿里云邮箱 卡巴斯基试用版下载 远程登录 此网页包含的内容将不使用安全的https symantec 香港打折信息 更多