key [Up | Down | Press]イベントを処理する場合、.whichまたは.keyCodeを使用する必要がありますか?jQueryで3つのキーボードイベントを処理するためのサンプルコードを入手できますか?jQueryなしでそれを行うことができますか?すべてのブラウザで確実に動作するようにしたいと思います。
アップデート
不思議なことに、jQueryのevent.which正規化は私のhandleKey Press(event)ハンドラーでは機能しませんでした:
// Add which for key events
if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) ) {
event.which = event.charCode || event.keyCode;
}
handleKey Press内でこの正規化の前後にこれを取得しています(event.whichをevent.keyCodeの値に設定していません):
- event.which = 0
- event.charCode = 0
- event.keyCode = 40
ただし、代わりにhandleKeyDownを使用するとコードは機能します。キープレスとキーダウンの関係だと思います。コードは私のhandleKeyDown (イベント)ハンドラーで機能します。
残念ながら、ナビゲーションに矢印キーを使用したいので、キープレス(キーダウンではなく)を使用する必要があります。ユーザーが矢印キーを押し続けると、キーダウンイベントが1回トリガーされますが、挿入されるたびに個別のキープレスイベントがトリガーされます。キャラクター)。