淺談事件冒泡與事件捕獲

  • 首先我們需要知道所謂的事件冒泡與事件捕獲是怎么來(lái)的

微軟提出了名為事件冒泡(event bubbling)的事件流。事件會(huì)從最內(nèi)層的元素開(kāi)始發(fā)生,一直向上傳播,直到document對(duì)象。

網(wǎng)景提出另一種事件流名為事件捕獲(event capturing)。與事件冒泡相反,事件捕獲會(huì)從最外層開(kāi)始發(fā)生,直到最具體的元素。

任由兩家大公司打來(lái)打去是不好的,所以W3C制定了標(biāo)準(zhǔn),先捕獲在冒泡

element.addEventListener(event, function, useCapture)
  • addEventListener有三個(gè)參數(shù)
    1 綁定的事件
    2 執(zhí)行的函數(shù)
    3 以冒泡還是捕獲去處理事件,默認(rèn)值為false,也就是事件冒泡,如果值為True,代表以事件捕獲去執(zhí)行

  • 下面我們分別看一下冒泡與捕獲的例子

事件冒泡的執(zhí)行方式[從最內(nèi)層一直向外傳播]

事件冒泡

事件捕獲的執(zhí)行方式[從最外層向內(nèi)傳播]

事件捕獲
  • 當(dāng)然,你也可以去阻止冒泡
e.stopPropagation()
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容