星空网 > 软件开发 > Java

理解捕获,目标,冒泡三个阶段

1.事件的三个阶段


  1. 捕获
  2. 目标
  3. 冒泡

捕获(IE8及以下版本不支持),目标,冒泡 捕获阶段给事件截获提供了可行性。

 

2.冒泡阶段触发事件


<body ><div id="all">  <div>div1</div>  <div>div2</div></div><script>    document.getElementsByTagName('body')[0].addEventListener('click', function(e) {    alert(1);  }, false);   document.getElementById('all').addEventListener('click', function(e) {    alert(2);  }, false);</script>

点击body区域:alert(1)

点击all区域:alert(2) alert(1)

 

3.捕获阶段触发事件

<body ><div id="all">  <div>div1</div>  <div>div2</div></div><script>  //将这里的false,改成true.表明body的绑定事件发生在捕获阶段  document.getElementsByTagName('body')[0].addEventListener('click', function(e) {    alert(1);  }, true);   document.getElementById('all').addEventListener('click', function(e) {    alert(2);  }, false);</script>

 

4.看图说话


 

理解捕获,目标,冒泡三个阶段

 

当点击目标元素的时候都是这三步,唯一的区别是你控制事件触发在哪个阶段。

所以我们可以看到要想截获事件必须要在目标元素事件发生之前,也就是捕获阶段。

 

5.冒泡与捕获的相对性


看了什么捕获,冒泡的时机问题。肯定有熊孩子会这么写:

写个例子:

 

<!DOCTYPE html><html><head>  <title>demo</title></head><body><a id="A">元素A</a></body><script type="text/javascript">  var domA = document.getElementById('A');//冒泡domA.addEventListener('click',function () {  alert('A')},false)//捕获domA.addEventListener('click',function () {  alert('B')},true)</script></html>

 

在同一个元素上绑定事件,看看哪个先弹出来(好想法!!!!)。

结果依旧是:A,B。

捕获与冒泡不是相对与该元素的,而是相对于父级元素或子级元素的。

这里可能又会冒出这样的想法:那么捕获与冒泡是相对是其他级的元素,那会冒泡到相邻兄弟元素么?

答案是不会。

我在这里测试过:冒泡,setinterval,背景图的div绑定事件,匿名函数问题

 




原标题:理解捕获,目标,冒泡三个阶段

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

制造商条形码or亚马逊条形码,卖家发货该如何选择?:https://www.ikjzd.com/articles/133910
黑五网一爆品清单,押中这些2020旺季稳了:https://www.ikjzd.com/articles/133911
独立站访问量大不大,这个页面很重要!:https://www.ikjzd.com/articles/133912
亚马逊或被罚款十亿美元!欧盟对互联网巨头下手了!:https://www.ikjzd.com/articles/133913
亚马逊起诉多名网红为第三方卖家宣传奢侈品假货:https://www.ikjzd.com/articles/133914
“无货源”跨境电商培训:人和货两头全被忽悠:https://www.ikjzd.com/articles/133915
太仓美食网(探寻太仓最美味的美食):https://www.vstour.cn/a/406244.html
莫干山门票多少?:https://www.vstour.cn/a/407226.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流