Які коди клавіш доступні для JavaScript? Якщо вони не однакові для всіх браузерів, перелічіть коди клавіш для кожного браузера.
Які коди клавіш доступні для JavaScript? Якщо вони не однакові для всіх браузерів, перелічіть коди клавіш для кожного браузера.
Відповіді:
keyCodes відрізняються від значень ASCII. Повне посилання на keyCode див. На http://unixpapa.com/js/key.html
Наприклад, номери Numpad мають коди клавіш 96 - 105, що відповідає початку малого алфавіту в ASCII. Це може призвести до проблем із перевіркою числового введення.
Далі слідують @ поради pimvdb в , і створив свій власний:
http://daniel-hug.github.io/characters/
Наберіться терпіння, оскільки для створення елемента для кожного з 65536 символів, що мають код ключа JavaScript, потрібно кілька секунд.
Мені потрібно було щось подібне для інтерфейсу конфігурації керування грою, тому я склав список для стандартних кодів клавіатури розкладки клавіатури в США і зіставив їх із відповідними назвами клавіш.
Ось скрипка, що містить карту для коду -> назва та наочно: http://jsfiddle.net/vWx8V/
Якщо ви хочете підтримувати інші макети ключів, вам доведеться змінити ці карти, щоб розмістити їх окремо.
Тобто, якщо ви не шукали перелік значень коду ключа, які включали керуючі символи та інші спеціальні значення, які неможливо (або рідко) вводити за допомогою клавіатури і можуть виходити за рамки keydown
/ keypress
/ keyup
подій Javascript. Багато з них є контрольними символами або спеціальними символами типу null
( \0
), і вони вам, швидше за все, не знадобляться.
Зверніть увагу, що кількість клавіш на повній клавіатурі менше, ніж багато значень коду клавіш.
Ця програма просто чудова. По суті, це віртуальна клавіатура, яка одразу показує код клавіші, натиснутий на стандартній американській клавіатурі.
Ось повний список - я вважаю: http://www.cambiaresearch.com/articles/15/javascript-char-codes-key-codes
Ось декілька корисних посилань:
Другий стовпець - це keyCode, а html-стовпець показує, як він відображатиметься. Ви можете перевірити це тут .
Під час запуску цього фрагмента буде дана одна можлива відповідь.
document.write('<table>')
for (var i = 0; i < 250; i++) {
document.write('<tr><td>' + i + '</td><td>' + String.fromCharCode(i) + '</td></tr>')
}
document.write('</table>')
td {
border: solid 1px;
padding: 1px 12px;
text-align: right;
}
table {
border-collapse: collapse;
}
* {
font-family: monospace;
font-size: 1.1em;
}