Javascript keyDown - без событийный подход


8

Я делаю игру на JavaScript. У меня есть холст для рисунков и игровой цикл. Я хотел бы сделать метод readKeyboard в цикле игры, чтобы проверить, есть ли какая-либо нажатая клавиша. Я не хочу прикреплять событие к холсту, потому что оно не соответствует дизайну игрового цикла. Может мне стоит прикрепить это событие? Какое лучшее решение?

Ответы:


5

Вы можете использовать библиотеку типа KeyboardJS , которая будет прослушивать события клавиатуры и заполнять массив активными клавишами.

В вашем игровом цикле:

var activeKeys = KeyboardJS.activeKeys();
if (activeKeys.indexOf(84) > -1) {
  // key pressed
}

Я также сделал свою собственную библиотеку , которая легче, но явно менее полная, чем KeyboardJS.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.