在 JavaScript 页面上,如果用户使用回车键,我会弹出一个警报
if(evt.keyCode == 13){
alert("Return Key Pressed");
}
但是当我在 iPad 上按回车键时,该事件不会触发。我如何捕捉事件?
在 JavaScript 页面上,如果用户使用回车键,我会弹出一个警报
if(evt.keyCode == 13){
alert("Return Key Pressed");
}
但是当我在 iPad 上按回车键时,该事件不会触发。我如何捕捉事件?
如果您按回车键,iPad 键盘确实会使用键码 13触发事件。keypress
这听起来像你有其他事情出错了
这是一个快速的 jsfiddle 验证:http: //jsfiddle.net/359wG/
根据https://api.jquery.com/keypress/
当浏览器注册键盘输入时,keypress 事件被发送到元素。这类似于 keydown 事件,不同之处在于修饰键和非打印键(如 Shift、Esc 和 delete)触发 keydown 事件,但不触发 keypress 事件。取决于平台和浏览器,可能会出现两个事件之间的其他差异。
按键事件处理程序可以附加到任何元素,但该事件仅发送到具有焦点的元素。可聚焦元素可能因浏览器而异,但表单控件总能获得焦点,因此是此事件类型的合理候选者。
我将返回键侦听器移动到一个锚标记,它在 IPad 上被视为类似于表单控件的“可聚焦元素”。