jQuery - jQuery - запрос:как захватить нажатие клавиши с помощью live()
Вопрос
Мне нужно зафиксировать событие нажатия клавиши tab на некоторых динамических входных данных, но обычный синтаксис, использующий событие нажатия клавиши, похоже, не улавливает код клавиши.
$('input').live('keypress', function (e) {
if ( e.which == 9 )
alert( 'Tab pressed' );
});
Кажется, это улавливает 0 в качестве нажатия клавиши, когда я прохожу через отладчик в firebug, независимо от того, какую клавишу я нажимаю.
Решение
Попробуйте сделать это с помощью .keyCode вместо .который:
$('input').live('keypress', function (e) {
if ( e.keyCode == 9 ){
alert( 'Tab pressed' );
}
});
Кажется, работает ;)
Другие советы
Попробуйте прислушаться к keyup
или keydown
вместо того , чтобы keypress
(согласно этому сообщению SO)
Не связан с StackOverflow