日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS中绑定事件顺序(事件冒泡与事件捕获区别)

發(fā)布時間:2025/4/9 javascript 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS中绑定事件顺序(事件冒泡与事件捕获区别) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在JS中,綁定的事件默認的執(zhí)行時間是在冒泡階段執(zhí)行,而非在捕獲階段(重要),這也是為什么當父類和子類都綁定了某個事件,會先調(diào)用子類綁定的事件,后調(diào)用父類的事件。直接看下面實例

<!Doctype html> <html> <head><meta charset="utf-8"><title></title><style type="text/css">*{margin:0;padding: 0;}</style> </head> <body> <div id="id1" style="height:400px; border:1px solid #000;"><div id="id2" style="height:200px; border:1px solid #000;"><div id="id3" style="height:50px; border:1px solid #000;"></div></div> </div> </body> <script type="text/javascript">var obj1=document.getElementById('id1'); obj1.addEventListener('click',function(){alert('id1');},false);var obj2=document.getElementById('id2');obj2.addEventListener('click',function(){alert('id2');},true);var obj3=document.getElementById('id3');obj3.addEventListener('click',function(){alert('id3');},true);/*如果第三個參數(shù)為true,則事件在捕獲階段執(zhí)行,如果第三個參數(shù)為false,則事件在冒泡階段執(zhí)行*/ </script> </html>

當點擊id3元素時候,執(zhí)行結(jié)果是:id2,id3,id1

解析:因為obj2與obj3綁定的方法在捕獲階段執(zhí)行,obj1的事件在冒泡階段執(zhí)行。

?

總結(jié)

在JS中,綁定的事件默認的執(zhí)行時間是在冒泡階段執(zhí)行,而非在捕獲階段,必須要理解

不過我們可以通過綁定事件時,指定事件執(zhí)行時間是在冒泡階段還是捕獲階段。

obj.addEventListener(event,function(){},bool)

bool:false,代表冒泡階段執(zhí)行

bool:true,代表捕獲階段執(zhí)行

JS在默認情況下獲取事件后,就開始從根元素開始捕獲所有該事件的監(jiān)聽對象,然后在冒泡階段逐一執(zhí)行。捕獲階段是在冒泡階段前面

?

阻止冒泡

w3c的方法是e.stopPropagation(),IE則是使用e.cancelBubble = true;

阻止默認行為

w3c的方法是e.preventDefault(),IE則是使用e.returnValue = false;

?

關(guān)于JS 事件冒泡和onclick,click,on()事件觸發(fā)順序

onclick,click,on()的優(yōu)先關(guān)系:onclick>click>on();

onclick和click綁定的事件,彼此之間遵守事件冒泡規(guī)則,從內(nèi)到外觸發(fā);

on()綁定的事件,總是晚于onclick和click綁定的事件觸發(fā);

轉(zhuǎn)載于:https://www.cnblogs.com/cboydream/p/6296896.html

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的JS中绑定事件顺序(事件冒泡与事件捕获区别)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。