<a href="http://example.com" class="example">test</a>
みたいなリンクを書いたとき、このリンク上でEnterされた場合には、そのhrefを無視して、別の挙動をさせたいと思い、Javascriptで制御しようとしています。
jQueryで下記のように書いてみました。
//$('.example').keypress(function(e)) { $('.example').keypress(function(e) { if (e.which == 13) { e.preventDefault(); // 何か別の処理をして終了したい alert("OK"); return false; } return false; });
IE,GoogleChromeだとこれできちんとalertを出して終了してくれるが、Firefoxの場合、alertを出したまま、次の画面へ遷移してしまう。このイベントを止める方法はないのか??
なんかよくわかんないんだけど、リンクの上でEnterすると、そのhrefがEmptyStringになってしまうようだ。それでそのhrefを取得してうんぬん、という処理ができないっぽい。明日に続く。
続くのヤメたw(2010.2.2追記)
なんかそもそもonclickイベントが発生するらしい。
というのは厳密ではなくて、jQueryのclickでイベントが走るようだ。なので、keypressではキャッチできなくなってしまっているということが判明。これ基本ですか?もしかして。