Я добавил прослушиватель событий в JS для прослушивания событий keyup / keydown, я пытаюсь переместить спрайт по холсту HTML. У меня это в основном работает, но страница прокручивается, когда пользователь нажимает клавиши со стрелками.
Я возвращаю false, и это, похоже, не работает. Кроме того, я понимаю, что возврат false таким образом отключит прокрутку кнопки со стрелкой для всей страницы. Я хотел бы отключить это только тогда, когда пользователь взаимодействует с самим холстом.
Вот мой слушатель событий:
addEventListener('keydown', function(e){
move = false;
x = false;
y = false;
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
switch(keycode){
case 37:
move = true;
x = 'negative';
break;
case 38:
move = true;
y = 'negative'
break;
case 39:
move = true;
x = 'positive'
break;
case 40:
move = true;
y = 'positive'
break;
}
if(move){
animation.move(x,y);
}
return false;
})
Изменить:
Приведенный ниже ответ дает хорошее представление о том, как убедиться, что холст сфокусирован, но я все еще озадачен, почему возвращение false в моей функции EventListener, которая возвращает false, не отключает прокрутку.