Отмена привязки клавиш - PullRequest
       5

Отмена привязки клавиш

1 голос
/ 17 апреля 2010

Я делаю игру, которая включает, как и все игры, нажатия клавиш.Только стрелка влево и вправо и пробел.Они работают, но браузер предварительно настроен для прокрутки влево, вправо или перехода по этим клавишам.Есть ли способ отсоединить эти ключи в коде?Спасибо.

1 Ответ

1 голос
/ 17 апреля 2010

вы должны быть в состоянии предотвратить поведение браузера по умолчанию, возвращая false после нажатия клавиши. Однако, в зависимости от того, как вы перехватываете ключевые события, кажется, что они работают по-разному в разных браузерах и даже для разных типов ключей (альфа против командных клавиш)

также могут работать jQuery protectDefault и stopPropagation, комментарии внизу этой документации дают много полезных советов http://api.jquery.com/event.preventDefault/

основываясь на информации, которую я собрал, этот небольшой кусочек кода, кажется, останавливает пробел и стрелки вниз / вверх от перемещения полосы прокрутки в опере и в firefox

попробуйте этот код (необходим jquery) в Firefox с включенной консолью Firebug

$(document).bind('keydown, keypress', function(event) {
  console.debug(event.keyCode + " - " + event.which);
  // event.preventDefault();
  return false;
});
...