Javascript - 在循环中获取 keydown

Javascript - getting keydown in a loop

我正在尝试制作一个浏览器游戏(使用 createjs,如果这有所作为)我想弄清楚的问题是如何在循环中获取事件 keydown,以及不突然。

例如,

createjs.Ticker.setFPS(60);
createjs.Ticker.addEventListener("tick", function() {

    // here
    if (isUpArrowKeyPressed) {
        movePlayerUp(); // This is an example, ignore this
    }

});

这样一来,如果按键刚好被按下 1 秒,它就会执行其中的操作 60 次。 (60fps)

有什么办法吗?

您需要将事件参数传递给您的函数。从那里您将能够看到按下了哪个键

createjs.Ticker.addEventListener("keydown", function(e) {
   var keyCode = e.keyCode

   // Compare the keycode
   if (keyCode === 57) {
       movePlayerUp(); // This is an example, ignore this
   }

});