js addEventListener(eventype,function,false/true); false true的区别

Posted 爱我所爱,不负芳华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js addEventListener(eventype,function,false/true); false true的区别相关的知识,希望对你有一定的参考价值。

第三个参数false true的区别

true 在捕获节点的时候就触发事件 ,由外到内

false 在冒泡的时候才触发事件,由内到外

 

html:

  1. <div id="out">  
  2.         <p>最外面</p>  
  3.         <div id="middle"
  4.     在中间
  5.             <div id="inner">最里面</div>  
  6.         </div>  
  7.     </div>  

js:

//情况一
var out1 = document.getElementById(‘out‘);
var middle1 = document.getElementById(‘middle‘);
var inner1 = document.getElementById(‘inner‘);
//点击inner时,触发顺序为:inner-------middle------out
out1.addEventListener(‘click‘,function(){alert("我是最外面的");},false);
middle1.addEventListener(‘click‘,function(){alert("我是中间的");},false);
inner1.addEventListener(‘click‘,function(){alert("我是最里面的");},false);

//情况二
var out2 = document.getElementById(‘out‘);
var middle2 = document.getElementById(‘middle‘);
var inner2 = document.getElementById(‘inner‘);
//点击inner时,触发顺序为:out------middle-------inner
out2.addEventListener(‘click‘,function(){alert("我是最外面的");},true);
middle2.addEventListener(‘click‘,function(){alert("我是中间的");},true);
inner2.addEventListener(‘click‘,function(){alert("我是最里面的");},true);

以上是关于js addEventListener(eventype,function,false/true); false true的区别的主要内容,如果未能解决你的问题,请参考以下文章

浏览器兼容性-JS篇

JS----addEventListener()

js addeventlistener 怎么传参数

js 模拟鼠标拖动

学习指js绑定事件

封装Js事件代理方法