この種のコードでjavascript/jQueryを使用して、BackspaceキーとDeleteキーの押すイベントをキャッチしようとしています。
$("textarea[name=txt]").keypress(function(e){
var keycode = e.keyCode ? e.keyCode : e.which;
if(keycode == 8){ // backspace
// do somethiing
alert(keycode);
}
if(keycode == 46){ // delete
// do somethiing
alert(keycode);
}
});
これらのコード行は、Firefox(3.6.12)で完全に機能します。つまり、BackspaceまたはDeleteが押されたときにアラートがポップアップ表示されます。しかし、これはInternet Explorer(8)では機能しません
Internet Explorerでこれらのキーを押すイベントをキャッチする別の方法を誰かが私に提案できますか?
IE=をサポートし、特殊なキー(delete
やbackspace
など)を使用する場合、keydown
/keyup
代わりに。
特殊キー
エクスプローラーキープレスを起動しません削除、終了、入力、エスケープ、ファンクションキー、ホーム、挿入、pageUp/Down、およびタブのイベント。
これらのキーを検出する必要がある場合は、自分でお願いし、keyCode onkeydown/upを検索して、onkeypressとcharCodeの両方を無視します。
キーストロークの検出(Quirksmode)のクロスブラウザーの問題について詳しく読むことができます。