Странная проблема: я сталкивался с запуском этого кода в Google Chrome:
window.addEventListener('keydown', function (event) {
console.log(event)
})
Пока я вижу журнал для некоторых клавиш ("w", "a", "s", пробел, "esc ", например) - другие ключи не вызывают это событие:" d "," r "," l "
На самом деле, некоторые из этих букв (например," r ") являются встроеннымиярлык в Chrome, который вызывает другое событие, например обновление страницы.
Интересно, что использование preventDefault
не решает проблему:
window.addEventListener('keydown', function (event) {
event.preventDefault()
console.log(event)
})
Обратите внимание, что в Firefoxоригинальный код (без preventDefault
) работает нормально - но не в Chrome.
Есть идеи, как решить эту проблему?
Обновление Может быть стоит отметить(хотя я не уверен, почему это влияет на это), что при запуске этого кода из файловой системы нет проблем в Chrome.Но как только этот код обслуживается (т.е. с localhost
), мы сталкиваемся с проблемой.