2008年7月9日水曜日

IE6でJavascriptがうまく動かないとき






<a href="javascript:void(0);" onclick="javascript:location.href = 'http://www.example.com';">移動だ!</a>


上記のような、a タグの href 属性に javascript:void(0); をセットして


onclick 属性で、javascript処理をしようとしたときに、FireFoxや、IE7では、特に問題にならなかったのですが


IE6は、上記では動きませんでした。




<a href="javascript:void(0);" onclick="javascript:location.href = 'http://www.example.com';return false;">移動だ!</a>



解決策としては、onclick 属性の最後に return false; をつければOKです。(仕様?)


他のイベントハンドラーの場合も多分必要です。


文法的に間違ってないのに a タグに設定したJavascriptが、IE6で動かないって時は、一度試してみてください。