Есть ли плагин jQuery, который нормализует коды клавиш в кросс-браузере? То есть, если вы нажмете определенную клавишу, то вы гарантированно получите один и тот же код клавиши для каждого браузера, в котором вы тестируете?
Есть ли плагин jQuery, который нормализует коды клавиш браузера?
Ответы (2)
Однако нет, он встроен в jQuery!
$("element").on("keypress",function(e){
console.log(e.which);
});
person
Kevin B
schedule
18.12.2012
Свойство which
объекта события определено для событий клавиш и мыши в большинстве браузеров, но не в IE ‹ 9. jQuery, однако, нормализует эту поддержку: e.what (Спасибо @RocketHazmat за указание на это)
$(this).keyup(function(e) {
var code = e.which;
...
}
person
benedict_w
schedule
18.12.2012
Зачем ты это делаешь?
The event.which property normalizes event.keyCode and event.charCode. It is recommended to watch event.which for keyboard key input.
api.jquery.com/event.what
- person Rocket Hazmat; 19.12.2012
Итак, вы ставите
e.keyCode
для учета IE ‹= 8?
- person Lester Peabody; 19.12.2012
e.which
отлично работает в IE8.
- person Rocket Hazmat; 19.12.2012
Для поддержки ie см. - stackoverflow. ком/вопросы/10315260/
- person benedict_w; 19.12.2012
@benedict_w: jQuery добавляет
e.which
, а не изначально в IE ‹ 9.
- person Rocket Hazmat; 19.12.2012
Я вижу @RocketHazmat - хороший звонок
- person benedict_w; 19.12.2012
@benedict_w: В вашем примере уже используется jQuery, поэтому
|| e.keyCode
совершенно бесполезен.
- person Rocket Hazmat; 19.12.2012
Спасибо, я отредактировал свой ответ и указал вам
- person benedict_w; 19.12.2012
event.which
. - person Rocket Hazmat   schedule 19.12.2012