详解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,则内层的触发先于外层。
以上就是本文的全部内容了,希望大家能够喜欢。
热门推荐
5 七十年祝福语简短
10 简短他人的生日祝福语
11 小班小孩生日祝福语简短
12 高考加油祝福语简短押韵
13 老板餐馆开业祝福语简短
14 心媳妇生日祝福语简短
15 带马的祝福语简短
16 老师结婚祝福语评论简短
17 鼠年元旦生日祝福语简短
18 送米的祝福语简短