|
js中“冒泡事件(bubble)”并不是能實際使用的花哨技巧,它是一種對js事件執(zhí)行順序的機制,“冒泡算法”在編程里是一個經(jīng)典問題,冒泡算法里面的“冒泡”應(yīng)該說是交換更加準(zhǔn)確;js里面的“冒泡事件”才是真正意義上的“冒泡”,它從DOM最低層逐層遍歷樹,然后附加相應(yīng)事件。以下面代碼為例:
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
查看運行效果
事件監(jiān)聽
事件監(jiān)聽準(zhǔn)確一點講可以說是js引擎對用戶鼠標(biāo)、鍵盤、窗口事件等動作的監(jiān)視進行的操作,也就是針對用戶相應(yīng)的操作進行附加事件,常用的類似 btnAdd.onclick="alert('51obj.cn')"就是一種簡單的附加事件,只不過這種方法不支持附加多個事件以及刪除事件。以下代 碼將實現(xiàn)附加事件后刪除事件(IE下):
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
查看運行結(jié)果
IE不能稱為標(biāo)準(zhǔn)的DOM瀏覽器,即使是最新的IE8,相對于標(biāo)準(zhǔn)DOM如Firefox、Opera等,它是個“異類”;在Firefox中才真正有稱為事件監(jiān)聽的函數(shù)addEventListener,如下例
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
查看運行效果
從上面兩個例子看出attachEvent在Firefox中并不支持,IE也不支持addEventListener.因此需要使用兼容性的方法。
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]
JavaScript技術(shù):js 冒泡事件與事件監(jiān)聽使用分析,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。