3

在 JavaScript 页面上,如果用户使用回车键,我会弹出一个警报

if(evt.keyCode == 13){
    alert("Return Key Pressed");
}

但是当我在 iPad 上按回车键时,该事件不会触发。我如何捕捉事件?

4

2 回答 2

3

如果您按回车键,iPad 键盘确实会使用键码 13触发事件。keypress这听起来像你有其他事情出错了

这是一个快速的 jsfiddle 验证:http: //jsfiddle.net/359wG/

于 2012-05-09T03:02:02.003 回答
0

根据https://api.jquery.com/keypress/

当浏览器注册键盘输入时,keypress 事件被发送到元素。这类似于 keydown 事件,不同之处在于修饰键和非打印键(如 Shift、Esc 和 delete)触发 keydown 事件,但不触发 keypress 事件。取决于平台和浏览器,可能会出现两个事件之间的其他差异。

按键事件处理程序可以附加到任何元素,但该事件仅发送到具有焦点的元素。可聚焦元素可能因浏览器而异,但表单控件总能获得焦点,因此是此事件类型的合理候选者。

我将返回键侦听器移动到一个锚标记,它在 IPad 上被视为类似于表单控件的“可聚焦元素”。

于 2019-07-18T17:21:54.597 回答