Как в keyup получить символ?
Собственно проблемы бы не возникло, если бы во всех браузерах имелся бы e.key. Но почему-то только в моззиле в это свойство пишется символ, который нарисован на клавише, которая вызывает событие keyup. В остальных браузерах undefined.
Как мне получить именно символ? keycode оно и понятно, номер клавиши на клавиатуре (причем что в русской, что в казахской что в английской раскладке он одинаковый), а вот что вводит эта клавиша в зависимости от раскладки, комбинации с Shift или CapsLook? Почему только в Моззиле это работает? Как заставить делать это другие браузеры? Или может кастыль какой подскажите? |
nkl,
Вариант ... <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function () { function fixedFromCharCode (codePt) { if (codePt > 0xFFFF) { codePt -= 0x10000; return String.fromCharCode(0xD800 + (codePt >> 10), 0xDC00 + (codePt & 0x3FF)); } else { return String.fromCharCode(codePt); } } $('body').keypress(function (event) { alert(fixedFromCharCode (event.which)) } ) } ) </script> </head> <body> <p>кликнуть тут и жмак по клаве</p> </body> </html> |
Ну в keypress я тоже могу это получить, а вот в keyup? Есть еще варианты?
|
Часовой пояс GMT +3, время: 16:46. |