ホームページ >ウェブフロントエンド >jsチュートリアル >javascript_form 効果の下で要素にイベントを追加するためのメソッドとコード

javascript_form 効果の下で要素にイベントを追加するためのメソッドとコード

WBOY
WBOYオリジナル
2016-05-16 19:10:231185ブラウズ

最も単純なのはこれです:


onclick イベントを動的に追加します:




匿名関数 function(){} を使用する場合、以下に示すように:





上記のメソッドは実際には同じ原理を持ち、すべて onclick 属性の値を定義します。 obj.onclick=method1; obj.onclick=method2; obj.onclick=method3 のように、obj.onclick が複数回定義されている場合は、obj.onclick=method3 の最後の定義のみが有効になることに注意してください。最初の 2 つの定義は、最後の定義によって上書きされています。

IE のattachEvent を見てください:




実行順序は、変数と同様に、method3 >method2 >method1、先入れ、後出しです。スタック内にあります。 AttachEvent の最初のパラメータは on で始まり、onclick/onmouseover/onfocus などになることに注意してください。

IE でattachEvent を使用した後は、(未確認ですが) を使用するのが最善であると言われています。 detachEvent を実行してメモリを解放します。
Firefox で addEventListener を見てください:



<script> <BR>var bObj=document.getElementById("bu"); <BR>bObj.onclick= objclick; <BR>function objclick(){alert(this.value)}; <BR></script> <script> <BR>var bObj=document.getElementById("bu"); <BR>bObj.onclick=function(){alert(this.value)}; <BR></script>ff での実行順序がメソッド 1 > メソッド 2 > メソッド 3 であることがわかります。 , IE の逆で、先入れ先出しです。 addEventListener には 3 つのパラメータがあることに注意してください。最初のパラメータは、クリック/マウスオーバー/フォーカスなどの「on」を除いたイベント名です。 <script> <BR>var bObj = document.getElementById("bu"); <BR>bObj.attachEvent("onclick",method1); <BR>bObj.attachEvent("onclick",method2); <BR>bObj.attachEvent("onclick",method3); <BR>function method1(){alert("第一个alert")} <BR>function method2(){alert("第二个alert")} <BR>function method3(){alert("第三个alert")} <BR></script><script> <BR>var bObj = document.getElementById("bu"); <BR>bObj.addEventListener("click",method1,false); <BR>bObj.addEventListener("click",method2,false); <BR>bObj.addEventListener("click",method3,false); <BR>function method1(){alert("第一个alert")} <BR>function method2(){alert("第二个alert")} <BR>function method3(){alert("第三个alert")} <BR></script>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。