以下是我正在做的事情:
$(document).keydown(function(e) {
e.preventDefault();
console.debug(e.keyCode, "down");
});
$(document).keyup(function(e) {
e.preventDefault();
console.debug(e.keyCode, "up");
});
您可以在此处查看问题:http://jsfiddle.net/pJgyu/32530/
如果我按住一个字母键,keydown会不断被解雇,直到我放开为止。然后keyup发射一次。这似乎是正确的行为。
如果我按住箭头键,keydown和keyup会不断交替。为什么键盘会被解雇?
我试过没有“e.preventDefault();”。
此外,按住箭头键后,SOMETIMES字母键显示相同的奇怪行为。
答案 0 :(得分:2)
您的键盘可能坏了。当我尝试在你的jsfiddle中复制它时,我没有那个问题。
答案 1 :(得分:0)
不仅必须打破键盘。 我有同样的问题,并花了一些时间谷歌搜索和调试它,只有在几个痛苦的时间后,我才记得我使用的键映射软件。我的AutoHotkey脚本使用特殊键(例如箭头)执行多项操作,这就是问题的原因。