Я обрабатываю событие keyup, и мне нужно получить набираемый символ.
Это ненадежно доступно.На keyup
вы получаете только keyCode
, а не charCode
.
(Если подумать, это имеет смысл: charCode
связан с символом, набираемым при нажатии клавиши, чтоможет быть смещен с помощью клавиши-модификатора и, таким образом, генерирует другой символ по сравнению с базовым ключом, на keyup
и keydown
, поскольку эти события не сразу связаны с набираемым новым символом, не существует известного символа для генерации.)
Так что, если вы делаете что-то, что зависит от того, напечатан ли .
символ , вам нужно будет использовать событие keypress
.
Если вы хотите знать, когда будет выпущена абстрактная клавиша , которая помечена как .
/ >
на некоторых распространенных раскладках клавиатуры, вы можете сделать это с помощью keyup
, используя keyCode
, указанный нассылка unixpapa.Использование keyCode
, как это, обычно используется для игр и других функций, где важна фактическая позиция ключа, а не символ, который она генерирует при вводе.поэтому вам нужно проверить его на наличие всех возможных значений, перечисленных выше, и вы не можете точно определить разницу между периодом основной клавиатуры, ключом numpad period / delete и основным ключом delete.