代码如下所示:<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>Document</title></head><body><div id="div2"> <div id="div1">点我</div></div><script type="text/javascript"> var div2=document.getElementById('div2'); var div1=document.getElementById('div1'); div1.addEventListener('click', function(event){console.log("A");}, true); div2.addEventListener('click', function(event){console.log("B");}); div1.addEventListener('click', function(event){console.log("C");}, false); div2.addEventListener('click', function(event){console.log("D");}, true);</script></body></html>当点击 点我 时,为什么输出结果是DACB???? 评论邀请回答编辑
1 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
结构为div2包裹着div1;
点击事件穿透进去,又冒泡出来,所以依次触发DACB
useCapture设为true时,穿透时触发。
addEventListener最后一个值:
useCapture可选。布尔值,指定事件是否在捕获或冒泡阶段执行。
可能值:
true - 事件句柄在捕获阶段执行
false- false- 默认。事件句柄在冒泡阶段执行
添加回答
举报
0/150
提交
取消