为什么不按键盘上的Delete键和Backspace键

问题描述 投票:7回答:2

我不是问这个问题,因为我需要解决方法。我有一个运行良好的设备,但我想知道为什么不行。这是Javascript中的错误(还是JQuery,因为我使用的是JQuery .keypress处理程序),还是有特定原因导致这种错误?

javascript keypress jquery-events onkeypress
2个回答
15
投票

keypress事件旨在处理用户键入的字符,而不是检测键盘活动,并且Delete和Backspace键不会生成字符。一些浏览器对此行有些模糊,但是一般的原理是keyupkeydown事件在那里可以检测到是否按下了任何键,并告诉您它是哪个键,而keypress用于检测正在键入的实际字符。


2
投票

简短的答案是不会在所有浏览器中为所有键类型触发onkeypress事件。查看您的浏览器手册。

为什么?

可能不是一个全面的答案,但考虑Shift,当它下降时以及相对于其他琴键上升时,意义重大。另外,您可能需要详细了解不同的键盘硬件具有不同的键翻转特性。

© www.soinside.com 2019 - 2024. All rights reserved.