Захват "Escape" Keypress в браузерах WebKit

У меня есть диалоговое окно, которое появляется, и я хотел бы, чтобы оно снова скрывалось при нажатии клавиши escape.

Все это прекрасно работает в IE, Firefox, Opera - код регистрирует обработчик события document.onkeypress, когда отображается окно, затем проверяет событие keyCode, чтобы увидеть, является ли это escape-ключом или нет (keyCode 27), но этого не видно работать в браузерах на основе WebKit (Chrome и Safari (3)), хотя другие ключи могут быть захвачены таким образом.

Разве браузеры WebKit вообще не запускают событие при нажатии escape?

Кто-нибудь знает, почему это не работает, как это исправить, или знает об обходной путь.

Ответы

Ответ 1

Вместо этого запустите keydown/keyup. Посмотрите эту запись для получения дополнительной информации.