What are the JavaScript KeyCodes?

JavascriptKeycode

Javascript Problem Overview


What keycodes are available for JavaScript? If they're not the same for all browsers, please list the keycodes for each browser.

Javascript Solutions


Solution 1 - Javascript

keyCodes are different from the ASCII values. For a complete keyCode reference, see http://unixpapa.com/js/key.html

For example, Numpad numbers have keyCodes 96 - 105, which corresponds to the beginning of lowercase alphabet in ASCII. This could lead to problems in validating numeric input.

Solution 2 - Javascript

Followed @pimvdb's advice, and created my own:

http://daniel-hug.github.io/characters/

Be patient, as it takes a few seconds to generate an element for each of the 65536 characters that have a JavaScript keycode.

Solution 3 - Javascript

I needed something like this for a game's control configuration UI, so I compiled a list for the standard US keyboard layout keycodes and mapped them to their respective key names.

Here's a fiddle that contains a map for code -> name and visi versa: http://jsfiddle.net/vWx8V/

If you want to support other key layouts you'll need to modify these maps to accommodate for them separately.

That is unless you were looking for a list of keycode values that included the control characters and other special values that are not (or are rarely) possible to input using a keyboard and may be outside of the scope of the keydown/keypress/keyup events of Javascript. Many of them are control characters or special characters like null (\0) and you most likely won't need them.

Notice that the number of keys on a full keyboard is less than many of the keycode values.

Solution 4 - Javascript

http://keycodes.atjayjo.com/

This app is just awesome. It is essentially a virtual keyboard that immediately shows you the keycode pressed on a standard US keyboard.

Solution 5 - Javascript

Solution 6 - Javascript

Here are some useful links:

The 2nd column is the keyCode and the html column shows how it will displayed. You can test it here.

Solution 7 - Javascript

One possible answer will be given when you run this snippet.

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;
}

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionWeb_DesignerView Question on Stackoverflow
Solution 1 - Javascriptuser736373View Answer on Stackoverflow
Solution 2 - JavascriptWeb_DesignerView Answer on Stackoverflow
Solution 3 - JavascriptNimphiousView Answer on Stackoverflow
Solution 4 - JavascriptjiminikizView Answer on Stackoverflow
Solution 5 - JavascriptCaseyView Answer on Stackoverflow
Solution 6 - Javascriptuser669677View Answer on Stackoverflow
Solution 7 - JavascriptfiatjafView Answer on Stackoverflow