详解addEventListener的三个参数之useCapture
addEventListener有三个参数:第一个参数表示事件名称(不含on,如"click");第二个参数表示要接收事件处理的函数;第三个参数为useCapture,本文就讲解它。
<divid="outDiv"> <divid="middleDiv"> <divid="inDiv">请在此点击鼠标。</div> </div> </div> <divid="info"></div>
varoutDiv=document.getElementById("outDiv");
varmiddleDiv=document.getElementById("middleDiv");
varinDiv=document.getElementById("inDiv");
varinfo=document.getElementById("info");
outDiv.addEventListener("click",function(){info.innerHTML+="outDiv"+"<br>";},false);
middleDiv.addEventListener("click",function(){info.innerHTML+="middleDiv"+"<br>";},false);
inDiv.addEventListener("click",function(){info.innerHTML+="inDiv"+"<br>";},false);
上述是我们测试的代码,根据info的显示来确定触发的顺序,有三个addEventListener,而useCapture可选值为true和false,所以2*2*2,可以得出8段不同的程序。
•全为false时,触发顺序为:inDiv、middleDiv、outDiv;
•全为true时,触发顺序为:outDiv、middleDiv、inDiv;
•outDiv为true,其他为false时,触发顺序为:outDiv、inDiv、middleDiv;
•middleDiv为true,其他为false时,触发顺序为:middleDiv、inDiv、outDiv;
•……
最终得出如下结论:
•true的触发顺序总是在false之前;
•如果多个均为true,则外层的触发先于内层;
•如果多个均为false,则内层的触发先于外层。
以上就是本文的全部内容了,希望大家能够喜欢。
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短