我在使用 JavaScript 时遇到了一个奇怪的问题。我正在开发一个使用键盘输入的 HTML5 canvas 游戏。游戏的双人模式涉及最多按下并按住键盘上的 6 个键。
“keyDown”事件似乎在我按住键盘上的 4 或 5 个键后停止调用。
我使用的代码如下:
window.onkeydown = function (event) {
console.log(event.keyCode);
input.onKeyDown(event.keyCode);
};
控制台应该为我按下的每个键记录一个键码。但是,它似乎只报告我按下的前 4 或 5 个键码。当两个玩家按下太多键时,这会导致我的游戏的双人版本控件无法正常工作。
这是错误、JavaScript/HTML5 的限制,还是我做错了什么?
最佳答案
这是 USB 键盘的限制,而不是您的代码!
关于按住多个键时不会触发 JavaScript KeyDown 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18155457/