事件冒泡和捕獲在HTML DOM API 中的事件傳播中發揮著至關重要的作用。為了理解它們的功能,讓我們深入研究這兩個概念的複雜性。
事件冒泡與事件捕獲
當一個事件發生在嵌套在另一個元素中的元素中時,並且兩個元素都為該特定事件註冊了事件處理程序,事件傳播模式決定了元素接收事件的順序event.
滴流與冒泡
捕獲也稱為“滴流”,這個術語有助於記住傳播順序:“滴流、冒泡” 」
瀏覽器支援
事件冒泡與事件捕獲相比,在復雜DOM 中的性能可能略低。方法在下列任一中註冊事件處理程序冒泡(預設)或擷取模式。 &&&]考慮以下HTML 結構:
如果li元素發生點擊事件:
捕獲模式下,事件首先由div處理,然後是ul,最後是li.在冒泡模式下,事件首先由li 處理,然後由ul處理,最後由div.其他資源
[QuirksMode 上的事件順序](https://www.quirksmode.org/ js/events_order.html )[addEventListener上MDN](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener)
下面的互動示例說明了事件傳播的捕獲和冒泡階段:
'訊息'
'); } 函數捕獲() { log('捕獲:' this.firstChild.nodeValue.trim()); } 函數氣泡(){ log('氣泡:' this.firstChild.nodeValue.trim()); } var divs = document.getElementsByTagName('div'); for (var i = 0; i 當點選任何反白的元素時,觀察首先發生的事件捕捉階段,然後是冒泡階段。免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3