摘要:兩種,冒泡和捕獲,不對是捕獲和冒泡。事件激活后是先進行捕獲,然后把函數都進行注冊,比如一個元素綁定了多個事件。,判定當前元素,綁或解或跳過
兩種,冒泡和捕獲,不對是捕獲和冒泡。
document.body.addEventListener("click",function(){console.log("1")},true); document.body.addEventListener("click",function(){console.log("4")},false); document.querySelector("header").addEventListener("click",function(){console.log("2")},true); document.querySelector("header").addEventListener("click",function(){console.log("3")},false);
說明:
先不關注捕獲還是冒泡。事件激活后是先進行捕獲,然后把函數都進行注冊,比如一個元素綁定了多個click事件。
然后判斷addEventListener的第三個參數,ture表示捕獲,false表示冒泡;
上面的body,header元素綁定了四個事件,ture優于false執行(兩個都有,捕獲事件優于冒泡),捕獲是從body往header(從外到內,對于都是true而言),冒泡是從header往body(從里到外,對于都是false而言)
阻止捕獲或者冒泡,拋開這兩個東西,也就是阻止事件傳播。打開chrome控制臺,執行console.dir(window.Event.prototype),關注里面的四個方法initEvent、preventDefault、stopImmediatePropagation、stopPropagation,第一個初始化事件方法,第二個阻止默認行為,第三個百度一下,第四個stop:停止,propagation:傳播。
target、currenttarget,判定當前元素,綁或解或跳過
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/85306.html
摘要:作為一名前端菜鳥,最近看例子,根據理解自己也簡單實現了一下組件的繼承和事件機制。公共功能銷毀在子類中調用的組件自己的功能的實現有很多種,我用了,的實現比較巧妙。最后記得提供一個銷毀組件的方法,一個簡單的組件就完成了。 作為一名前端菜鳥,最近看react例子,根據理解自己也簡單實現了一下組件的繼承和事件機制。 代碼在這里 原始的組件寫法 (function($) { $.plug...
摘要:也不例外,在發布新功能前,最好是一定要對代碼進行充分的測試。自從年雙十一正式上線,累計處理了億錯誤事件,付費客戶有金山軟件百姓網等眾多品牌企業。 譯者按: 前端技術涉及的越來越多! 原文: 10 things to learn on the way to becoming a JavaScript Master 譯者: Fundebug 為了保證可讀性,本文采用意譯而非直譯。...
摘要:除此之外,還有一種情況也會修改,在一些庫中傳入回調函數,可能會強制改變的綁定,例如在中本例中的就是被強制改變綁定到了觸發事件的元素上。它們的第一個參數是一個對象,它們會把這個對象綁定到,接著在調用函數時指定這個。 理解JavaScript中的this關鍵詞 this關鍵詞是JavaScript語言中一個很重要,同時也是一個非常復雜的機制,它同時也是一個很特殊的關鍵詞,它一般會被自動定義...
閱讀 2137·2023-04-25 18:49
閱讀 1840·2019-08-30 14:02
閱讀 2643·2019-08-29 17:24
閱讀 3323·2019-08-28 18:10
閱讀 2926·2019-08-28 18:03
閱讀 488·2019-08-26 12:01
閱讀 3309·2019-08-26 11:31
閱讀 1409·2019-08-26 10:29