1. 綁定事件的相容 function addEventListener(element,type,fn) { if(element.addEventListener){ element.addEventListener(type,fn,false); }else if(element.attach ...
1. 綁定事件的相容
function addEventListener(element,type,fn) { if(element.addEventListener){ element.addEventListener(type,fn,false); }else if(element.attachEvent){ element.attachEvent("on"+type,fn); }else{ element["on"+type]=fn; } }
2. 解綁事件的相容
function removeEventListener(element,type,fnName) { if(element.removeEventListener){ element.removeEventListener(type,fnName,false); }else if(element.detachEvent){ element.detachEvent("on"+type,fnName); }else{ element["on"+type]=null; }
測試解綁時間的相容:
//解綁事件的相容 //為任意的一個元素,解綁對應的事件 function removeEventListener(element, type, fnName) { if (element.removeEventListener) { element.removeEventListener(type, fnName, false); } else if (element.detachEvent) { element.detachEvent("on" + type, fnName); } else { element["on" + type] = null; } } function f1() { console.log("測試相容第一個"); } function f2() { console.log("測試相容第二個"); } addEventListener(my$("btn1"), "click", f1); addEventListener(my$("btn1"), "click", f2); my$("btn2").onclick = function () { removeEventListener(my$("btn1"), "click", f1); };