混乱keyCodeしていないと思いますcharCodeか?
QuirksModeの下部からの結果を使用すると、次のようになります。
- F5
- キーダウン:keyCodeは116です。charCodeは0です
- keypress:keyCodeは116です。charCodeは0です
- t
- キーダウン:keyCodeは84です。charCodeは0です
- keypress:keyCodeは0です。charCodeは116です
- T
- キーダウン:keyCodeは84です。charCodeは0です
- keypress:keyCodeは0です。charCodeは84です
keyCodeユーザーが実際に押したキーボードキーをcharCode表し、文字のコードポイントを表します。たとえば、キーtとTはkeyCode同じキーの結果であるため同じcharCodeですが、異なる文字を表すために異なります。
したがって、質問に答えるために、F5キーダウンで得られる出力は84であり、プラグを差し込むとString.fromCharCode()「T」になりますが、キーを押すと116になります。これは、を使用した「t」に対応しString.fromCharCode()ます。
要するに、結果は無意味なので、を使用String.fromCharCode()しないでください。keyCodeでのみ使用してcharCodeください。また、QuirksModeの「Specialkeys」から
これらのキーを検出する必要がある場合は、自分でキーコードonkeydown / upを検索し、onkeypressとcharCodeの両方を無視してください。