JS監(jiān)聽事件的疊加和移除功能
html DOM元素有很多on開頭的監(jiān)聽事件,如onload、onclick等,見DOM事件列表。但是同一種事件,后面注冊的會覆蓋前面的:
window.onresize = function(){
alert(1);
}
window.onresize = function(){
alert(2);
}
// 改變窗口大小時,只會彈出2
addEventListener監(jiān)聽
利用addEventListener添加監(jiān)聽事件,可以重復添加,并不會互相覆蓋:
window.addEventListener("resize",function(){
alert(1)
})
window.addEventListener("resize",function(){
alert(2)
})
// 改變窗口大小時,先后彈出1和2
注意這里面的事件是不帶"on"前綴的。
removeEventListener移除監(jiān)聽
removeEventListener跟addEventListener相對應,用于移除事件監(jiān)聽。
如果要移除事件句柄,addEventListener() 的執(zhí)行函數必須使用外部具名函數,匿名函數事件是無法移除的。
// 匿名函數事件無法移除
window.addEventListener("resize",function(){
alert(1)
})
// 監(jiān)聽具名函數事件
function myResize(){
alert(2)
}
window.addEventListener("resize",myResize)
// 移除事件監(jiān)聽
window.removeEventListener("resize",myResize)
總結
以上所述是小編給大家介紹的JS監(jiān)聽事件的疊加和移除,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
JavaScript——DOM操作——Window.document對象詳解
下面小編就為大家?guī)硪黄狫avaScript——DOM操作——Window.document對象詳解。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-07-07
JavaScript數據結構與算法之二叉樹添加/刪除節(jié)點操作示例
這篇文章主要介紹了JavaScript數據結構與算法之二叉樹添加/刪除節(jié)點操作,涉及javascript二叉樹的定義、節(jié)點添加、刪除、遍歷等相關操作技巧,需要的朋友可以參考下2019-03-03
JavaScript 函數惰性載入的實現及其優(yōu)點介紹
惰性載入表示函數執(zhí)行的分支只會在函數第一次掉用的時候執(zhí)行,在第一次調用過程中,該函數會被覆蓋為另一個按照合適方式執(zhí)行的函數,這樣任何對原函數的調用就不用再經過執(zhí)行的分支了2013-08-08

