トップページ >  JavaScript >  attachEventの使い方
初版2013/03/08: 最終更新日2013/03/08
  attachEventの使い方
目次
attachEventの使い方
サンプル
attachEventの使い方
attachEventは、IE9以前のIEで使用できるメソッドです。addEventListenerのIEバージョンのようなものです。
IE以外では使用できませんが、その場合はaddEventListenerを使用します。
そのため、IE以外でエラーが起きないように記述するために以下のように書きます。

if(obj.attachEvent){
    // IE用
}else{
    // その他ブラウザ用
}

サンプル
以下、サンプルです。第一引数は、イベント名をそのまま書きます。この場合、onclickとなります。
onclickイベントにdispMsg1,dispMsg2の二つのメソッドを実行するようにさせています。
別オブジェクトの確認ボタンを押すと、obj.attachEventをアラート表示しています。





以下、ソースです。

<script type="text/javascript">
window.onload = function() {
    if(oButton1.attachEvent){
        oButton1.attachEvent("onclick", dispMsg1, false);
        oButton1.attachEvent("onclick", dispMsg2, false);
        oButton2.attachEvent("onclick", dispMsg3, false);
    }
}

function dispMsg1() {
    alert("dispMsg1");
}

function dispMsg2() {
    alert("dispMsg2");
}
function dispMsg3() {
    alert(oButton2.attachEvent);
}
</script>

<input type="button" id="oButton1" value="ボタン" />
<input type="button" id="oButton2" value="確認ボタン" />

addEventListenerとの大きな違いとして、attachEventはリスナー登録した順に関数が実行されません。
addEventListenerはリスナー登録した順に関数が実行されます。
IE7で動作確認済みです。