19

keypress他のキーは機能しますが、削除キーはChromeでイベントを発生させないことがわかりました。この問題はFirefoxでは発生せず、Chromeだけで発生します。なぜですか?これが私のコードです:

document.addEventListener('keypress', function (e) {
     console.log(e);
}, false);
4

2 に答える 2

23

使用するkeydownか、keyup代わりに、削除キーをキャプチャします(および、keypressがキャプチャしない他のキーもキャプチャします。http: //www.quirksmode.org/js/keys.htmlを参照してください) 。

document.addEventListener('keydown', function (e) {
     console.log(e);
}, false);
于 2012-04-17T08:29:08.243 に答える
5

keypress(Del、End、Homeなど)のイベントは IE、Chrome、safariでは発生しません..Firefoxでのみ機能します。

イベントは実際の(印刷可能な)文字を対象としているため、 keyuporkeydownイベントを使用できます。下位レベルで処理されるため、DEL、Endなどのすべての非印刷キーをキャプチャします。keypress"keydown"

于 2012-11-29T07:00:58.720 に答える