Ответ 1
Попробуйте следующее:
$(function() {
$(window).keypress(function(e) {
var key = e.which;
//do stuff with "key" here...
});
});
Посмотрите на действие jsFiddle
Я создаю сайт, который после загрузки страницы должен прослушивать определенную строку клавиатуры.
Событие, которое меня интересует, - это сканер, сканирующий объект, но он представляет на сайт как ввод с клавиатуры формы ~XXX~
.
Я вижу, что jQuery имеет событие keypress()
, которое можно привязать к определенному объекту.
Но как я могу слушать общий ввод с клавиатуры, после $(document).ready
?
Попробуйте следующее:
$(function() {
$(window).keypress(function(e) {
var key = e.which;
//do stuff with "key" here...
});
});
Посмотрите на действие jsFiddle
Я сделал это раньше. Есть много других вещей, о которых можно беспокоиться, кроме того, как обрабатывать события нажатия клавиш.
Ваш сканер, вероятно, отправляет ввод, завернутый начальным и конечным символами. Я бы создал объект ScanReader, который присоединяется к событию нажатия клавиши. Когда он обнаруживает начальный символ, он начинает накапливать пресеты до тех пор, пока не будет обнаружен символ конца.
Чтобы избежать путаницы с вводом пользователя, нажатия клавиш должны быть относительно близкими (по времени) друг к другу, вам нужно проверить его и посмотреть, какое количество мс между нажатиями клавиш. Быстрые машины могут печатать до 50 мс между нажатиями клавиш.