事件繫結:
為什麼要用到事件繫結? 我的理解是同乙個物件無法新增多個事件?如果新增多個事件的話按照執行順序來說下邊的事件會把上面的替換;就像以下**:
var odiv = document.getelementbyid("div1");odiv.onclick = function()
odiv.onclick = function()
只會彈出2 ;
我們想要都彈出怎麼辦?
var f1 = function();var f2 = function()
odiv.addeventlistener("click",f1);odiv.addeventlistener("click",f2);
odiv.attachevent("onclick",f1);odiv.attachevent("onclick",f2);
就可以這麼寫
為什麼這麼寫了四個 因為有相容性 下邊的是為了相容ie
所以綜合寫法:新增事件
function addevent (ele,type,fun)else}移除事件:
function removeevent (ele,type,fun)else}注意事項:1.事件的相容 2.事件是否有on;
事件委託:原因新增物件無法新增事件:可以委託給其父元素常用案例(取快遞事件)
jQuery事件繫結與事件委託
在jquery類庫中,事件繫結與事件委託的用法受到了廣泛的關注。不僅如此,這還成了當今前端攻城獅的 熱門面試題目。十次面試有七八次會問到這個問題,因此,了解掌握事件的繫結和委託,還是比較重要的。冒泡 眾所周知,html的dom結構自外而內,層層包裹。如 div p span a,這樣式的,當我們的事...
事件繫結和事件委託區別
靜態繫結,也是最直接的事件繫結 通過事件屬性,直接顯示的給元素繫結事件,例如 該方式缺點 當頁面多元素都要新增事件時,定義繁瑣。函式名稱定義改變,一次要修改兩個地方。動態繫結 關於事件監聽的適配 因為ie 有自己的事件監聽 attachevent 和detachevent 分別用於事件監聽 obtn...
委託與事件
1.建立乙個類,分別建立加 減 乘 除四個方法,通過委託和事件,實現 輸入兩個計算數,完成所有的四個方法的呼叫,計算出結果顯示。建立乙個警察 policeman 類,乙個小偷 thief 類,例項化兩個類的物件,當policeman類中警笛鳴響 alarm 方法執行時,觸發小偷逃跑 runaway ...