Andy的前後端技術筆記、生活紀錄
Javascript事件冒泡Event Bubbling
發佈於: 2024-04-18 更新於: 2024-04-21 分類於: frontend > frontend_interview

事件冒泡Event Bubbling

事件冒泡是DOM中對事件處理的一種機制。
當在DOM中的某個元素(例如,一個按鈕)發生事件(如點擊)時,這個事件不僅在該元素上觸發,還會沿著DOM樹向上冒泡,依次觸發其父元素、父元素的父元素,一直到最頂層的document物件,這一路上的元素都可以收到事件觸發。

例子:假設你希望在一個容器(div)內的所有元素被點擊時執行相同的操作(console.log(‘click’)),你可以在這個容器上設置一個事件監聽器(event listener)。
當容器內的任何一個元素被點擊時,點擊事件會通過事件冒泡機制向上傳遞,最終抵達這個容器。一旦事件到達容器,就會觸發設置在容器上的callback function(這裡設定console.log(‘click’))。

上面的例子稱作事件委託,它利用了事件冒泡的特性來簡化對多個元素的事件處理,同時提升程式效能,也不需要每個元素都去設定事件監聽。特別是對於動態加入到容器中的新元素,無需單獨為它們綁定事件監聽器,事件委託可以自動地管理它們的事件。

--- 到底拉 The End ---