JS事件覆盖问题和触发问题

事件覆盖与触发解析
本文解释了一个关于事件处理程序覆盖的问题。通过一个具体的例子说明了DOM0级事件处理程序与DOM2级事件处理程序(如addEventListener)之间的区别,以及如何在不同阶段(捕获和冒泡)设置事件处理程序来避免覆盖。

昨天遇到一个面试题,主要就是事件覆盖问题和触发问题

 (不是打广告,无视文本内容)

总之这样的话,会输出三次“做自己的网站”。

为什么不是两次,而是输出三次呢?

1.首先onclick=function...是DOM0级事件处理程序,而addEventListener是DOM2级事件处理程序,这两种属于不同类,不会相互覆盖。

2.此外事件监听的第三个参数是设置事件处理程序的调用阶段,true是捕获阶段,false是冒泡阶段,默认为false。如果处在不同阶段的话就不会相互覆盖。

综上两点,所以会输出三次。

 

转载于:https://www.cnblogs.com/wuguanglin/p/EventOverried.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值