Javascriptイベント登録メカニズム
7383 ワード
Javascriptのいくつかのイベント登録メカニズム
1.要素に直接結合します.このような欠点は構造と挙動が分離されておらず、w 3 cの基準に合わないことである.長所は、便利に書いてあることです.
http://blog.csdn.net/lynnlin1122/article/details/3477818
1.要素に直接結合します.このような欠点は構造と挙動が分離されておらず、w 3 cの基準に合わないことである.長所は、便利に書いてあることです.
1 <p id="para" title="cssrain demo!" onclick="test()" >test</p>
2 <script>
3 function test(){
4 alert("test");
5 }
6 </script>
2.構造と行為の分離1 <p id="para" title="cssrain demo!">test</p>
2 <script>
3 function test(){
4 alert("test");
5 }
6 window.onload = function(){
7 document.getElementById("para").onclick = test;
8 }
9 </script>
3.複数のイベントを一つの要素に結合する 1 <p id="para" title="cssrain demo!">test</p>
2 <script>
3 function test(){
4 alert("test");
5 }
6
7 function pig(){
8 alert("pig");
9 }
10
11 window.onload = function(){
12 document.getElementById("para").onclick = test;
13 document.getElementById("para").onclick = pig;
14 }
15 </script>
上記のように書くと、私達は第二の関数しか出力できません.この時に私達はatachEventの方法を使う必要があります. 1 <p id="para" title="cssrain demo!">test</p>
2 <script>
3 function test(){
4 alert("test");
5 }
6
7 function pig(){
8 alert("pig");
9 }
10
11 window.onload = function(){
12 document.getElementById("para").attachEvent("onclick",test);
13 document.getElementById("para").attachEvent("onclick",pig);
14 }
15 </script>
互換性firefox 1 <p id="para" title="cssrain demo!">test</p>
2 <script>
3 function test(){
4 alert("test");
5 }
6
7 function pig(){
8 alert("pig");
9 }
10
11 window.onload = function(){
12 var element = document.getElementById("para");
13 if(element.addEventListener){ // firefox , w3c
14 element.addEventListener("click",test,false);
15 element.addEventListener("click",pig,false);
16 } else { // ie
17 element.attachEvent("onclick",test);
18 element.attachEvent("onclick",pig);
19 }
20 }
21 </script>
jsイベント登録の関連記事:http://blog.csdn.net/lynnlin1122/article/details/3477818