2015-11-14 7 views
0

Я тестирую вход на http://www.asquare.net/javascript/tests/KeyCode.htmlПочему ключевой код в событии keydown и keyup отличается?

keycode in keydown and keyup event are different

keycode в keydown и keyup событие различны. Почему это происходит? Кроме того, мы можем узнать, какой ключ нажат из данной таблицы?

Я знаю, что мы обычно используем String.fromCharCode(), но какое значение следует использовать, 229 или 49 или их среднее значение? LOL

Я использую Chrome Версия 44.0.2403.155 м на ОС Windows 7.

ответ

0

См Legacy KeyboardEvent supplemental interface (курсив мой): поддержка

Browser для клавиатуры традиционно опиралась на три одноранговых атрибутов , keyCode, charCode, и which.

Все три из этих атрибутов возвращает числовой код, который представляет некоторых аспект нажатой клавиши: keyCode является показателем самого ключа . charCode - это значение ASCII символов. which - это значение символа, где доступно, и в противном случае ключевой индекс. Значение этих атрибутов, а также наличие атрибута , противоречива по платформ, языки клавиатуры и макеты, пользовательские агенты, версии и даже типы событий.

Именно поэтому, по словам Legacy Key Attributes,

Авторы ДОЛЖНЫ использовать атрибут KeyboardEvent.key вместо charCode и keyCode атрибутов.

 Смежные вопросы

  • Нет связанных вопросов^_^