標籤:list function 不相容 lis remove call script asc FN
<div></div>
//事件綁定的方法
div.onclick = function (){} //function裡的this指向DIV
-----------------------------------------------
//obj.addEventListener(type,fn,false) IE9以下不相容,可以為一個事件綁定多個處理常式 function裡的this指向div
div.addEventListener(‘click‘,function (){},false);
div.addEventListener(‘click‘,test,false);
function test(){
//....
}
---------------------------------------------------
//obj.attachEvent(on+‘type‘,fn) IE專屬,一個事件可以綁定多個處理函數 this指向window
div.attachEvent(‘onclick‘,function(){
handle.call(div);
})
function haddle(){
this//......
}
//解決this指向的問題
------------------------------------------------
//事件綁定函數封裝
1 function addEvent(elem,type,handle){ 2 if(elem.addEventListener){ 3 elem.addEventListener(type,handle,false); 4 }else if(elem.attachEvent){ 5 elem.attachEvent(‘on‘+type,function (){ 6 handle.call(elem); 7 }) 8 }else{ 9 elem[‘on‘+type] = handle;10 }11 12 }13 14 addEvent(div,click,fn);
//解除事件綁定
elem.onclick = null;
elem.removeEventListener(type,fn,false);
elem.dettachEvent(‘on‘+type,fn);
JavaScript 事件 事件綁定 事件解除