国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS中綁定事件順序(事件冒泡與事件捕獲區(qū)別)

2019-11-19 17:47:29
字體:
供稿:網(wǎng)友

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

<!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); /*如果第三個(gè)參數(shù)為true,則事件在捕獲階段執(zhí)行,如果第三個(gè)參數(shù)為false,則事件在冒泡階段執(zhí)行*/</script></html>

當(dāng)點(diǎn)擊id3元素時(shí)候,執(zhí)行結(jié)果是:id2,id3,id1

解析:因?yàn)閛bj2與obj3綁定的方法在捕獲階段執(zhí)行,obj1的事件在冒泡階段執(zhí)行。

總結(jié)

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

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

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

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

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

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

阻止冒泡

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

阻止默認(rèn)行為

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ā);

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持武林網(wǎng)!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 安新县| 孟津县| 香河县| 秀山| 中牟县| 昆明市| 太康县| 青海省| 德化县| 沐川县| 井陉县| 桃源县| 墨脱县| 中超| 台湾省| 肥城市| 普宁市| 蓬安县| 建宁县| 辰溪县| 疏勒县| 黄石市| 西贡区| 芒康县| 青阳县| 噶尔县| 宝应县| 陆川县| 汤阴县| 湛江市| 富源县| 白朗县| 郓城县| 法库县| 涿州市| 资阳市| 宁武县| 淅川县| 日土县| 陇川县| 长武县|