javascript - HTC One X KeyCode 始终返回零

标签 javascript android dom-events htc-android

在将文本发送给第三方进行操作之前,我需要使用 JavaScript 验证输入到 textbox 中的文本。

为此,我使用 browserEvent.keyCode 参数获取在按键事件中发送到浏览器的 keycode,然后验证代码以在 textbox 中说明是否允许。

除 HTC One X 上的 Chrome 之外,这在我测试过的所有设备上都运行良好。

我发现各种 Android 和 iOS 设备之间存在恼人的差异,但它们都会返回一些我可以使用的东西。然而,HTC One X 每次按下按键都会返回 0BackspaceEnter 键除外,后者会返回 813 分别。

我已经尝试了 event.keyCodeevent.charCodeevent.which 以及 browserEvent.keyCodebrowserEvent.charCodebrowserEvent.which 代码,所有内容都返回为 0

基本上,我被困住了。有没有人知道

  1. 为什么 keycode 在此设备上总是返回为 0,以及
  2. 如何检测键码

最佳答案

虽然它没有回答直接的问题,但我使用了 Lukas Knuth 给我的一些想法来解决它。

现在的过程是捕获 0 的键码并将其传递给一个函数,该函数通过一些正则表达式验证来运行输入框的内容。如果验证失败,则从输入框中删除最后一个字符。

如果有人来到这个问题寻求 HTC One X 通过 0 作为键码的解决方案,我深表歉意,经过几天的研究和实验,我找不到解决方案,所以我解决了这个问题相反。

关于javascript - HTC One X KeyCode 始终返回零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15205412/

相关文章:

javascript - 在客户端 Mocha 单元测试期间使用外部类

javascript - 错误: spawn ENOENT for video upload

java - 如何仅从图库中获取图像

javascript - 如何同时监听谷歌地图中的多个DOM事件?

javascript - preventDefault 会阻止 Mac 上 Firefox 中的右键单击菜单,但不会阻止 Windows

javascript - 检查 IF 语句中的复选框是否已选中

javascript - 使用填充方法创建二维数组

javascript - 如何使用 d3.js 向我的图表添加标签?

android - 针对 Android 错误的 Meteor 地理定位包

android - 在分享 Intent android 中使用 Facebook sdk 的 ShareContent