※ 認識DOM(四)

閱讀時間約 1 分鐘

※ 說明事件委派 (Event Delegation) ,背後的運作機制。

網頁元素接收事件的順序,流程有兩種個方向的傳遞:

  • 由下而上的,稱為事件冒泡 (event bubbling)
  • 由上而下的,稱為事件捕獲 (event capturing)

※ 事件冒泡 Event Bubbling

事件冒泡指的是「從啟動事件的節點 (event.target) 開始,逐層往上傳遞」,直到整個網頁的根節點 document 為止。

例如在 Todo List 裡監聽刪除事件時,click 事件發生在刪除按鈕 i.delete 上,但由於事件為往上傳遞,因此 ul 也收到了 click 事件,因而啟動了監聽器裡的 handler。

raw-image

※ event.stopPropagation()

如果不希望某個事件在DOM樹中進一步傳播時,可以使用這個方法。例如,在一個位於某個父元素內的按鈕觸發事件時,如果不想讓這個事件影響到父元素,就可以使用 event.stopPropagation()。

※ 事件捕獲 Event Capturing

由上而下的傳遞則稱為「事件捕獲」(Event Capturing) 。

當你點擊某個元素時,瀏覽器會先從最高層開始 capturing,一路前往到事件 target,再向上 bubbling。由於元素之間有這樣的上下回報機制,我們的事件才能順利地動起來。

raw-image

※ 檢查事件是怎麼觸發的、又傳去了哪裡的工具

  • console.log(this)
  • console.log(event.target)
    全端網頁開發專業知識分享
    留言0
    查看全部
    avatar-img
    發表第一個留言支持創作者!
    ※ 好用的陣列迭代器:forEach forEach 的使用時機: 需要從頭到尾把陣列中的每一個元素都印出來 ,就適合使用 forEach 方法。 forEach 的必要參數是一個函式: forEach() 的功能是把陣列的每個元素都丟進某個函式執行一次,因此必要的參數是一個函式。 語法:
    ※ 查找 DOM 元素有兩種途徑: 直接選出一個節點 (select):要在樹狀結構裡查找資料,至少要先選出第一個元素。 從一個特定節點,查找到週邊的節點 :選出一個元素後,就可以順著結構找出父元素、子元素 、甚至同一層的兄弟元素,這種行為稱為「遍歷 (traverse)」。 ※ 選出特定 D
    ※ Javascript和HTML的關係 當我們輸入新的網址或按下重新整理時,從解析檔案到畫面顯示出來,瀏覽器會進行以下流程: 解析 HTML / CSS 檔案,建立物件模型: HTML → DOM (Document Object Model)。 CSS → CSSOM (CSS Obje
    ※ DOM是什麼? DOM 全名為 Document Object Model 中文翻譯為 文件物件模型,就是把一份 HTML 文件內的各個標籤,包括文字、圖片等等都定義成物件,而這些物件最終會形成一個樹狀結構。 就 Document Object Model 這個名字來說,其中 documen
    ※ 非同步概念總複習 為什麼要使用 Promise? 在 JavaScript 開發中,處理非同步操作是常見需求,涉及如文件讀寫、數據庫查詢或網路請求等耗時任務。傳統的回調方式可能導致代碼結構混亂,稱為「回調地獄」,難以維護和理解。 Promise 是解決這問題的方法。它是一個物件(objec
    認識 async/await基本概念: async 的本質是 promise 的語法糖 ,只要 function 標記為 async,就表示裡頭可以撰寫 await 的同步語法,而 await 顧名思義就是「等待」,它會確保一個 promise 物件都解決 ( resolve ) 或出錯 ( re
    ※ 好用的陣列迭代器:forEach forEach 的使用時機: 需要從頭到尾把陣列中的每一個元素都印出來 ,就適合使用 forEach 方法。 forEach 的必要參數是一個函式: forEach() 的功能是把陣列的每個元素都丟進某個函式執行一次,因此必要的參數是一個函式。 語法:
    ※ 查找 DOM 元素有兩種途徑: 直接選出一個節點 (select):要在樹狀結構裡查找資料,至少要先選出第一個元素。 從一個特定節點,查找到週邊的節點 :選出一個元素後,就可以順著結構找出父元素、子元素 、甚至同一層的兄弟元素,這種行為稱為「遍歷 (traverse)」。 ※ 選出特定 D
    ※ Javascript和HTML的關係 當我們輸入新的網址或按下重新整理時,從解析檔案到畫面顯示出來,瀏覽器會進行以下流程: 解析 HTML / CSS 檔案,建立物件模型: HTML → DOM (Document Object Model)。 CSS → CSSOM (CSS Obje
    ※ DOM是什麼? DOM 全名為 Document Object Model 中文翻譯為 文件物件模型,就是把一份 HTML 文件內的各個標籤,包括文字、圖片等等都定義成物件,而這些物件最終會形成一個樹狀結構。 就 Document Object Model 這個名字來說,其中 documen
    ※ 非同步概念總複習 為什麼要使用 Promise? 在 JavaScript 開發中,處理非同步操作是常見需求,涉及如文件讀寫、數據庫查詢或網路請求等耗時任務。傳統的回調方式可能導致代碼結構混亂,稱為「回調地獄」,難以維護和理解。 Promise 是解決這問題的方法。它是一個物件(objec
    認識 async/await基本概念: async 的本質是 promise 的語法糖 ,只要 function 標記為 async,就表示裡頭可以撰寫 await 的同步語法,而 await 顧名思義就是「等待」,它會確保一個 promise 物件都解決 ( resolve ) 或出錯 ( re
    你可能也想看
    Google News 追蹤
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
    Thumbnail
    Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
    Thumbnail
    在南管之鄉、在南管世家成長的王心心說,她睜眼、閉眼間,盡是悠悠南管在耳邊響起。
    Thumbnail
    托凱 (Tokaj) 產區位於匈牙利的東北方和斯洛伐克 (Slovakia) 的交界處,喀爾巴阡山脈 (Carpathian Mountains) 的山腳下,是世界最為知名的貴腐甜白酒產區之一,這邊產的葡萄酒稱為托卡伊 (Tokaji)。不過近年來,晚摘酒和不甜的酒款也越來越受到歡迎。
    Thumbnail
    加州大部分的葡萄酒都產自位於內陸的農業經濟重心的中央谷地,土壤肥沃,透過引水灌溉來提高產量。比較優質的葡萄酒則大多來自於加州沿岸,因為受到洋流的影響,氣候比較冷涼,需要花比較多的心思照顧葡萄園。加州主要的葡萄園可以畫分成五個區域,大部分的 AVA 來自於其中的三個區域:北海岸、中部海岸,與中央谷地。
    Thumbnail
    【起司很有事】專題近期開設一的新的欄目:〔起司美味〕這個單元,是介紹一些餐廳起司入菜的菜品,藉由他們創意美味,認識一款起司,大家也可嘗試他們的作品認識一款起司另一種風味。 起司加握壽司等於毛球?這是什麼鬼呀?
    Thumbnail
    最近台灣正值一波「呼吸道融合病毒」的大流行,有不少兩歲以下的孩童感染了呼吸道融合病毒,而染上急性細支氣管炎而必須住院治療,嚴重一點的孩童甚至喘到需要住到加護病房,接受呼吸器的支持。今天要為大家簡介急性細支氣管的症狀、嚴重度的區分及相應的治療方法,並告訴家長如何避免孩童得到急性細支氣管炎......
    Thumbnail
    「Is it just me, or is it getting crazier out there?」—《JOKER》 小丑在笑,不代表開心;莫梭沒哭,不代表無情,但因為不符合社會期待,被視作異類。然而,透過卡繆的筆,我們可以窺探莫梭的內心,得以比較出外在世界多麽荒謬。
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
    Thumbnail
    Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
    Thumbnail
    在南管之鄉、在南管世家成長的王心心說,她睜眼、閉眼間,盡是悠悠南管在耳邊響起。
    Thumbnail
    托凱 (Tokaj) 產區位於匈牙利的東北方和斯洛伐克 (Slovakia) 的交界處,喀爾巴阡山脈 (Carpathian Mountains) 的山腳下,是世界最為知名的貴腐甜白酒產區之一,這邊產的葡萄酒稱為托卡伊 (Tokaji)。不過近年來,晚摘酒和不甜的酒款也越來越受到歡迎。
    Thumbnail
    加州大部分的葡萄酒都產自位於內陸的農業經濟重心的中央谷地,土壤肥沃,透過引水灌溉來提高產量。比較優質的葡萄酒則大多來自於加州沿岸,因為受到洋流的影響,氣候比較冷涼,需要花比較多的心思照顧葡萄園。加州主要的葡萄園可以畫分成五個區域,大部分的 AVA 來自於其中的三個區域:北海岸、中部海岸,與中央谷地。
    Thumbnail
    【起司很有事】專題近期開設一的新的欄目:〔起司美味〕這個單元,是介紹一些餐廳起司入菜的菜品,藉由他們創意美味,認識一款起司,大家也可嘗試他們的作品認識一款起司另一種風味。 起司加握壽司等於毛球?這是什麼鬼呀?
    Thumbnail
    最近台灣正值一波「呼吸道融合病毒」的大流行,有不少兩歲以下的孩童感染了呼吸道融合病毒,而染上急性細支氣管炎而必須住院治療,嚴重一點的孩童甚至喘到需要住到加護病房,接受呼吸器的支持。今天要為大家簡介急性細支氣管的症狀、嚴重度的區分及相應的治療方法,並告訴家長如何避免孩童得到急性細支氣管炎......
    Thumbnail
    「Is it just me, or is it getting crazier out there?」—《JOKER》 小丑在笑,不代表開心;莫梭沒哭,不代表無情,但因為不符合社會期待,被視作異類。然而,透過卡繆的筆,我們可以窺探莫梭的內心,得以比較出外在世界多麽荒謬。