如何增加总同时按键?

时间:2016-05-18 12:57:58

标签: javascript google-chrome keypress

我一直在进行一些研究,因为我在我开发的游戏中遇到了一个问题,即应用只需要几次按键。该游戏是使用HTML / CSS / JavaScript构建的chrome web商店应用程序。

http://jsfiddle.net/gFcuU/

url/to/server-side/data

这是其他人的JSFiddle,显示键盘上按下的键。我一次最多只能获得6个。我对那些不能同时按下超过3个键的人抱怨我的游戏。我相信这是一个键盘限制,但有任何解决方法吗?

可以想象,如果一次只能按下3个按键,这就很难玩玩家1使用WASD的多人游戏,玩家2的IJKL同时移动。

1 个答案:

答案 0 :(得分:0)

您可以使用数组来保存关键状态

var keyStates = [ ];

document.addEventListener('keydown', function(e) {
    keyStates.push( e.keyCode );
}, false);

document.addEventListener('keyup', function(e) {
    var pos = null;

    if( (pos = keyStates.indexOf( e.keyCode )) > -1 )
        keyStates.splice( pos, 1 );
}, false);