Могу ли я изменить приоритет очереди событий в JavaScript? - PullRequest
4 голосов
/ 11 ноября 2008

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

Можно ли манипулировать приоритетом очереди?

Ответы [ 3 ]

1 голос
/ 17 сентября 2010

Из вашей проблемы я могу догадаться, что пользователь прекращает сканирование, когда слышит звук ошибки. Если это так, зачем ждать, пока пользователь остановит сканирование.

Вы можете выполнить любое из следующих действий.

Как только произойдет ошибка, прекратите ввод данных. Вы можете установить «нажатие клавиши», чтобы вернуть ложь. Также вы можете установить буфер для события нажатия клавиши, который сначала сохраняет входные данные, а затем возвращает false. Таким образом, вы получите данные после возникновения ошибки.

1 голос
/ 11 ноября 2008

Javascript не является многопоточным, поэтому вариант 2 не будет работать. И я подозреваю, что очередь событий, о которой вы говорите, - это очередь событий ОС, которая вряд ли будет доступна из браузера, если вообще будет.

Кроме того, у меня небольшие проблемы с пониманием вашей проблемы. Что такое звук ошибки? Это событие keyup и т. Д. Или проверка на стороне сервера, которая возвращает код ошибки или что-то еще?

0 голосов
/ 11 ноября 2008

Что если вы попытаетесь отложить сканирование (используя setTimeout()), позволяя звукам начинаться и заканчиваться между ними?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...