Jenscript String.fromCharCode Чувствительность к регистру?
Я просто слушаю событие keyup для входного элемента и собираю результаты в строку вроде
word=word+String.fromCharCode(key.keyCode);
Проблема заключается в том, что слово написано заглавными буквами, в то время как я хочу, чтобы он учитывал регистр.
Например, если я набираю abcef, мое накопленное слово становится "ABCEF".
Примечание. Мне нужно чистое решение для javascript (без библиотек..)
Любые мысли?
Ответы
Ответ 1
События типа keyup
и keydown
вернут 65 для a
и a
(а также true
для event.shiftKey
, если этот ключ удерживается).
Событие keypress
возвращает разные коды клавиш для букв верхнего и нижнего регистра, поэтому для чувствительности этого рабочего случая вы должны использовать событие keypress
, а fromCharCode()
вернет правильную букву, чувствительную к регистру.
Ответ 2
Вы всегда можете позвонить .toLowerCase()
word = word + String.fromCharCode(key.keyCode).toLowerCase();
Может возникнуть смысл называть .toLowerCase()
только один раз, в тот момент, когда вы решаете, что закончили накапливать символы.