この記事では主にjsのバインディングイベントとアンバインドイベントに関する関連知識を紹介します。非常に良い基準値を持っています。以下のエディターで見てみましょう
jsで複数のイベントをバインドするために使用されるメソッドは2つあります:attachEventとaddEventListenerですが、これら2つのメソッドには違いがあります
attachEventメソッドはIE678のみをサポートしており、他のブラウザとは互換性がありません
addEventListenerメソッド
addEventListenerメソッド
addEventListenerメソッド
addEventListenerメソッドaddEventListenerメソッド
addEventListenerメソッドp.addEventListener('click',fn); p.addEventListener('click',fn2); function fn(){ console.log("春雨绵绵"); } function fn2(){ console.log("到处潮湿"); }
p.attachEvent('onclick',fn); p.attachEvent('onclick',fn2); function fn(){ console.log("春雨绵绵"); } function fn2(){ console.log("到处潮湿"); }
以下にIE、Firefox、Googleと互換性のあるメソッドを書きましたvar p=document.getElementsByTagName("p")[0];
addEvent('click',p,fn)
function addEvent(str,ele,fn){
ele.attachEvent?ele.attachEvent('on'+str,fn):ele.addEventListener(str,fn);
}
function fn(){
console.log("春雨绵绵");
}
ele.detachEvent("onclick",fn);
removeEventListener的写法:
ele.removeEventListener("click",fn);
detachEvent メソッドは IE678 のみをサポートしており、他のブラウザとは互換性がありません
removeEventListenerメソッド Firefox および Google と互換性あり、IE8 以下とは互換性なし
🎜🎜🎜🎜detachEvent メソッドの記述:🎜🎜🎜🎜ele.detachEvent("onclick",fn);
🎜 🎜 🎜🎜方法RemoveEventListener:🎜🎜🎜🎜ele.removeEventListener("click",fn);
🎜🎜参考までに互換性メソッドを以下に書きました、実装も非常に簡単です🎜function remove(str,ele,fn){ ele.detachEvent?ele.detachEvent("on"+str,fn):ele.removeEventListener(str,fn); }
以上がjsのバインディングイベントとアンバインドイベントについて詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。