« hostsDEメール | メイン | セッションIDを毎回変える »

2008年10月07日

javascript イベントリスナー


規格通り(ふぁいやーふぉっくすなど)

//リスナー追加
element.addEventListener("click", func, true);
//リスナー削除
element.removeEventListener("click", func, true);

規格外(IE)

//リスナー追加
element.attachEvent("onclick", func);
//リスナー削除
element.detachEvent("onclick", func);


onclickとかclickはイベントの名前です。

IEの場合はイベント名の前にonがいります。

以下よく使いそうなイベント名と対応するイベント発生条件。

* load・・・読み込まれたとき
* change・・・selectなどを変えたとき
* click・・・クリックされたとき
* keydown・・・キーが押されたとき(どのキーが押されたかもわかります)
* keyup・・・キーが放されたとき
* keypress・・・キーが押されたとき
* mousedown・・・マウスがクリックされたとき
* mouseup・・・マウスのクリックを放したとき
* mouseover・・・マウスがエレメントの上に来たとき
* mouseout・・・マウスがエレメントの上から離れたとき


渡す関数に引数を渡したい??
element.addEventListener("click", func(1,4), true);
↑これは無理です。渡すのはあくまでも関数です。

上記に似たことを行うには(無名関数を使った例)
element.addEventListener("click", function(){func(1,4);}, true);

となります。無名関数の削除方法はのちほど・・・

投稿者 muuming : 2008年10月07日 09:14

コメント

コメントしてください




保存しますか?