jQuery 'keypress' не работает для некоторых клавиш в Chrome. Как обойти эту проблему?

Я пытаюсь реализовать функциональность нажатия клавиш, которая удалит div, когда пользователь нажимает Esc . Это работает для Firefox и IE со следующим кодом:

$("body").keypress(function(e) {
    alert("any key pressed");
    if (e.keyCode == 27) {
        alert("escape pressed");
    }
});

Если я нажму любую клавишу, отобразится первое предупреждение , а если я нажму Escape, появится Также отображается второе предупреждение .

Это не работает с Chrome. Первое предупреждение всегда отображается, если я нажимаю любую из буквенных клавиш, но не когда я нажимаю Escape, Tab, Пробел или любое из чисел.

Почему это должно быть? Есть ли способ заставить Chrome реагировать на эти нажатия клавиш?

62
задан Tamzin Blake 15 April 2014 в 23:33
поделиться