Я использую событие jQuery keydown для обнаружения кодов клавиш, которые могут помочь предотвратить некоторые операции.jQuery 'KeyDown' Событие выпуск - Быстрый ввод
Существует один вход поле с классом «.donothack» вроде как ниже
<input name="hac" class="donothack" id="donothack" value="" />
И в JQuery код упоминается как ниже
$(".donothack").on("keydown", function(event) {
console.log(event.keyCode);
if(event.shiftKey && event.keyCode != 9 || event.keyCode != 9) {
//Stop operation
}
}
Теперь проблема в том, что когда кто-то типы слишком быстрые в этом поле ввода, тогда каждое событие в браузере повесили, и он должен вручную убить браузер или страницу через диспетчер задач компьютера.
Я тогда решил console.log
, после чего я обнаружил, что события растут как угодно. Подсчет бесконечен, как показано на рисунке ниже. И я даже не знаю, что сколько раз я нажал клавиши :(
Просьба предложить решение?
, что именно вы пытаетесь для достижения? Событие keydown запускается при каждом нажатии клавиши, и если вы выполняете некоторые дорогостоящие вычисления для каждого события, это будет медленным. – KWeiss
Я проверяю код ключа, чтобы событие не было t запускается с использованием клавиши shift или tab. – Gags
, когда пользователь быстро набирает скорость, тогда все мертво – Gags