javascript - JS/JQuery keyup 和 keydown Android 设备上不可预测的行为

标签 javascript android jquery

我正在编写一个 web 应用程序,当用户在 web 表单中键入时,我会在其中收集击键。到目前为止,它在桌面上运行良好,但在移动设备上,尤其是 Android 设备上却不行。这些行为是不可预测的。例如:

  • 退格键/删除键在某些设备上不会触发按键事件,但在其他一些设备上会触发。
  • 修饰键(又名 Shift 键)在某些设备上不会触发按键事件,但会在其他设备上触发。
  • 在某些设备上可以正确检测到键码,而在其他设备上则不能。

例如,在三星 S4 上,使用 native 浏览器将始终为任何键提供等于零的键码。当我在三星 S4 上使用 chrome 浏览器版本 45.0.2454.84 时,大多数键的键码始终为 229。

在 Samsung Galaxy Ace 2 上使用 native 浏览器,我得到了所有键的正确键码(与我在桌面上使用硬件键盘得到的相同键码)但是 shift/modifier 键没有触发

使用 Sony Xperia M4 Aqua,chrome 浏览器版本 45.0.2454.84 我得到了所有键的正确键码。 Agin 修饰键不触发。当我在 Sony Xperia 上使用 native 浏览器时,我得到的键码为零。

即使使用相同的浏览器“chrome 浏览器版本 45.0.2454.84”在不同的设备上提供不同的行为,我也找不到真正的模式。

在 iPhone iPad 和 Windows Phone 上我没有这个问题。

最佳答案

为此,我刚刚在 Chromium 中标记了一个错误。 https://code.google.com/p/chromium/issues/detail?id=531234

关于javascript - JS/JQuery keyup 和 keydown Android 设备上不可预测的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32533480/

相关文章:

php聊天客户端

java.lang.NumberFormatException?

android - 在android中运行时更改按钮背景

java - 最小化开关盒

jquery 不返回元素

javascript - 为什么 array === array.toString().split (",")

javascript - D3.js:时间尺度上均匀分布的条形

javascript - R Shiny - 将 'remove' 按钮添加到框标题

jquery - 解析 Twitter 的 JSON 结果时,indexOf 不起作用

javascript - jQuery 选择器的奇怪输出