Я пишу сценарий, который требует от пользователя одновременного нажатия нескольких клавиш. Я отслеживаю, какие нажаты, используя onkeydown и onkeyup event-слушатели. Однако некоторые комбинации клавиш несовместимы, что обычно приводит к звуку, и прослушиватель событий не запускается. Есть ли способ обнаружить ошибку клавиатуры?Обнаружение ошибок клавиатуры в javascript
Вот некоторые из моих кодов. Если, например, пользователь нажимает следующую последовательность без отпускания, компьютер выдаст сигнал ошибки: T, R, O. Однако 'O' не будет запускать keyDonwFn.
В html-коде у меня есть onkeydown = "keyDownFn (event);"
function keyDownFn(e) {
if (isCorrectKey(e.keyCode)){
do A
}else if (e.keyCode != currentKey){
do B
}else if (e.keyCode == currentKey){
do C
}
}
, и я хотел бы иметь другое еще, если за ошибки:
else if (e.keyCode == error){
do D
}
Измените свой вопрос, чтобы включить соответствующий фрагмент кода и пример ввода, который вызывает проблему. –
Неудивительно, что прослушиватель событий не запускается. Вы должны предположить, что это ваш код, если вы не можете доказать обратное. Покажите нам, что не работает – charlietfl
Как обсуждалось в duskwuff, большинство клавиатур не поддерживают n-key rollover. Я просто пытаюсь определить, когда достигнуты ограничения клавиатуры. Я отредактировал, чтобы привести пример 3-буквенного комбо, который несовместим. – Brukba