Всем привет! Помогите разобраться, как изменить код, чтобы обрабатывались две нажатые клавиши одновременно. Чтобы две кнопки были независимы друг от друга.
Я так понимаю тут причина в keyCode, которая принимает только какое то одно значение. т.е при получении второго значения(скажем D) значение W удаляется. Нужен массив? пробовал по разному, не понимаю.
var mas = {
'W':87,
'D':68
};
window.onkeydown=function(e){
if(e.keyCode == mas.W){
console.log('Кнопка W нажата');
}
if(e.keyCode == mas.D){
console.log('Кнопка D нажата');
}
window.onkeyup=function(e){
if(e.keyCode == mas.W){
console.log('Отжата кнопка W');
}
else if(e.keyCode == mas.D){
console.log('Отжата кнопка D');
}
}
}
В консоле при нажатии к примеру клавиши W вижу, как она обрабатывается, но как только нажимаю D обработка W прерывается.
В дальнейшем хочу чтобы объект в canvas мог двигаться не только по вертикали и горизонтали, но и по диагонали.