Как видно из названия, в моем коде я использую следующие коды:
- Слева: 37
- Вверх: 38
- Вправо: 39
- Вниз: 40
И проверьте эти коды клавиш, чтобы определить мое действие. Мой вопрос: всегда ли они остаются прежними? Если бы я использовал клавиатуру DVORAK или неанглийскую клавиатуру, эти коды клавиш остались бы прежними?
В той же строке есть ли предпочтительный способ для обнаружения этих нажатий клавиш?
В настоящее время я делаю это следующим образом:
var Key = {
_pressed: {},
LEFT: 37,
UP: 38,
RIGHT: 39,
DOWN: 40,
isDown: function (keyCode) {
return this._pressed[keyCode];
},
onKeydown: function (event) {
this._pressed[event.keyCode] = true;
if (Key.isDown(Key.UP))
//do up action
else if (Key.isDown(Key.DOWN)) {
//do down action
}
delete this._pressed[event.keyCode];
}
};