one_woody's diary

気になったことを殴り書き

javascriptのpreventDefaultメソッド

jsのソースコード読んでて、preventDefaultメソッドってのが出てきたんですが、「これ何するメソッドだっけ」ってなったのでググりましたのでその時のことを書いておきます。

そのソースコードからイベントハンドラってのは分かったんですが、詳しくわからなくて 1分でわかるreturn false; preventDefault(); stopPropagation() の違い | iwb.jp ってサイトを参考にさせてもらいました。

ただ、JQueryで書かれてたのでこれをJSで書き直してみました。 

 #html部分

>||

<div>

    <a href="http://www.yahoo.co.jp">Yahoo</a>

</div>

||<

#js部分

>||

window.onload = function(){

    var a = document.getElementsByTagName("a");

    var div = document.getElementsByTagName("div");

    a[0].onclick = function(e){

        e.preventDefault();

        alert("a");

    };

    div[0].onclick = funtion(){

        alert("div");

    };

}

||<

これで同じ挙動になるわけですが、解説は上記ページの通りです。

preventDefaultメソッドでaタグでyahooのページに飛ぶイベントが無効になってます。