Пример событий клавиатуры jQuery
jQuery поставляется с тремя событиями клавиатуры для захвата действий клавиатуры -keyup(),keydown() иkeypress().
-
keyup () - срабатывает, когда пользователь отпускает клавишу на клавиатуре.
-
keydown () - срабатывает, когда пользователь нажимает клавишу на клавиатуре.
-
keypress () - срабатывает, когда пользователь нажимает клавишу на клавиатуре.
В общем случаеkeydown() аналогичен событиямkeypress(). На самом деле между событиямиkeydown() иkeypress() довольно мало различий.
1. Повторите ключи
Если вы нажмете и удержите клавишу, событие keydown () будет инициировано один раз, но событие keypress () будет срабатывать само до тех пор, пока вы не отпустите клавишу.
2. Клавиши-модификаторы
Клавиши-модификаторы клавиатуры (ctrl, shift, alt…) будут запускать событие keydown (), но не событие keypress ().
3. KeyCode - код ASCII
Например, A = 65 и a = 97, обратитесь к этомуASCII table charts.
-
keydown () и keyup () будут отображать a = 65, A = 65 (без учета регистра - строчные и прописные буквы будут отображать одно и то же значение).
-
нажатие клавиш () отобразит a = 97, A = 65 (с учетом регистра - строчные и прописные буквы будут отображать разные значения).
Если вы хотите зафиксировать ввод действительного символа, перейдите к событию keypress ().
KeyCode не отображается в FireFox?
event.keyCode не работает в FireFox, но отлично работает в IE. Чтобы получитьevent.keyCode в Firefox, вы должны использовать вместо этогоevent.which, и jQuery также рекомендует его. Так что лучший способ должен быть
var keycode = (event.keyCode ? event.keyCode : event.which);