按键同时按下

Mag*_*eek 4 javascript keydown

我可以在Javascript中知道同时按下的键数吗?

如果是这样,我怎么能有他们的阵列keyCode

Nea*_*eal 11

您可以收听keydown和keyup事件.

var keys = { length: 0 };

document.onkeydown = function(e){
    if(!keys[e.keyCode])   {
        keys[e.keyCode] = true;
        keys.length++;
    }
}

document.onkeyup = function(e){
    if(keys[e.keyCode])   {
        keys[e.keyCode] = false;
        keys.length--;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后所有的键true都是当前按下的键.

感谢@Esailija的小提琴演示:http://jsfiddle.net/maniator/Gc54D/

  • ProTip:addEventListener (3认同)