正在检测javascript中的键盘错误
Detecting keyboard errors in javascript
我正在编写一个脚本,要求用户同时按下多个键。我使用onkeydown和onkeyup事件监听器来跟踪哪些被按下。但是,某些键的组合是不兼容的,通常会导致嘟嘟声,并且不会触发事件侦听器。有什么方法可以检测键盘错误吗?
这是我的一些代码。例如,如果用户按下以下顺序而不释放,计算机将发出错误提示音:T、R、O。不过,"O"不会触发keyDonwFn。
在html代码中,我有onkeydown="keyDownFn(event);"
function keyDownFn(e) {
if ( isCorrectKey( e.keyCode ) ){
do A
}else if (e.keyCode != currentKey){
do B
}else if (e.keyCode == currentKey){
do C
}
}
如果有错误的话,我想要另一个:
else if (e.keyCode == error){
do D
}
不,这可能是不可能的。
您所描述的大多数限制可能是键盘硬件本身的限制——大多数键盘不支持n-键翻转,因此它们在物理上无法正确检测同时按下的多个键。硬件级别没有发生这种情况的通知,因此无法将其传播到网页。
也有可能您使用的一些组合键被映射到浏览器中的命令,而这些命令无法被网页捕获。同样,如果发生这种情况,则事件不会传播到网页,因此您无法检测到它。
相关文章:
- Node.js v6.2.0类扩展不是函数错误
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 为什么会出现错误;未捕获的类型错误:undefined不是函数;
- 我如何修复包含在captcha的addthis中的错误
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- CKFinder 3为所选文件返回错误的URL
- 同位素库错误:未捕获错误无布局模式包装生产线8
- 铬:“;未捕获的语法错误:意外的标记:"
- 正在检测javascript中的键盘错误
- 虚拟键盘jquery在引导模式中显示错误
- UIWebView 在键盘出现时滚动.导致点击偏移错误
- 键盘错误 捕获键代码时发出声音
- 带键盘的 j轮播 :使用 Tab 键的错误焦点
- 复选框事件处理程序抛出错误的点击事件在chrome浏览器,safari工作良好的键盘事件
- iPhone“Go"键盘按钮导致错误抛出前发回
- jQuery键盘快捷键插件unbind在我的演示中不工作,但没有显示任何错误