-
-
Save tylerthebuildor/8011573 to your computer and use it in GitHub Desktop.
backspace 8 | |
tab 9 | |
enter 13 | |
shift 16 | |
ctrl 17 | |
alt 18 | |
pause/break 19 | |
caps lock 20 | |
escape 27 | |
page up 33 | |
page down 34 | |
end 35 | |
home 36 | |
left arrow 37 | |
up arrow 38 | |
right arrow 39 | |
down arrow 40 | |
insert 45 | |
delete 46 | |
0 48 | |
1 49 | |
2 50 | |
3 51 | |
4 52 | |
5 53 | |
6 54 | |
7 55 | |
8 56 | |
9 57 | |
a 65 | |
b 66 | |
c 67 | |
d 68 | |
e 69 | |
f 70 | |
g 71 | |
h 72 | |
i 73 | |
j 74 | |
k 75 | |
l 76 | |
m 77 | |
n 78 | |
o 79 | |
p 80 | |
q 81 | |
r 82 | |
s 83 | |
t 84 | |
u 85 | |
v 86 | |
w 87 | |
x 88 | |
y 89 | |
z 90 | |
left window key 91 | |
right window key 92 | |
select key 93 | |
numpad 0 96 | |
numpad 1 97 | |
numpad 2 98 | |
numpad 3 99 | |
numpad 4 100 | |
numpad 5 101 | |
numpad 6 102 | |
numpad 7 103 | |
numpad 8 104 | |
numpad 9 105 | |
multiply 106 | |
add 107 | |
subtract 109 | |
decimal point 110 | |
divide 111 | |
f1 112 | |
f2 113 | |
f3 114 | |
f4 115 | |
f5 116 | |
f6 117 | |
f7 118 | |
f8 119 | |
f9 120 | |
f10 121 | |
f11 122 | |
f12 123 | |
num lock 144 | |
scroll lock 145 | |
semi-colon 186 | |
equal sign 187 | |
comma 188 | |
dash 189 | |
period 190 | |
forward slash 191 | |
grave accent 192 | |
open bracket 219 | |
back slash 220 | |
close braket 221 | |
single quote 222 |
Hello @longwangchao, They are key codes which are used for handle events of keyboard keys on javascript.
Thank you for this! I renamed some keys and put it in a function here:
https://gist.github.com/hodgef/e190731ab6c5d297ab22e25811d8fea9
space: 32
Does anyone by chance know what the missing numbers are for? These being
0 - 7, 10 - 12, 14, 15, 21 - 26, 28 - 32, 41 - 44, 47, 58 - 64, 94, 95, 108, 124 - 143, 146 - 185, 193 - 218
That is a total of 126 missing codes. My guess is that these codes are codes for non-Latin QWERTY or other input methods, but I'd really like to know what they are, and if there are more ( 223+ ).
I have a source saying Cyrillic н is 1085, (not sure if it means ASCII charcode) so perhaps. Have to check out further... From what I'm reading the codes "indicate the key position by referencing one of a small number of standard keyboard models (ANSI, ISO, or JIS)". In terms of the missing codes, if true, that might indicate that those may be present in other layouts perhaps.
Thank you for sharing this. However, here is JavaScript keyboard article which is helpful to understand Keyboard event properties and how to use it.
Both e.which
and e.keyCode
are deprecated, so these codes are not relevant anymore, and even before they were not reliable as there were a ton of inconsistencies across different browsers and OSs.
You should use e.key
or e.code
instead. This is the way. Just keep in mind some old browsers used some non-standard codes, so left is usually 'LeftArrow'
and right is 'RightArrow'
, but on IE and Legacy Edge they would be 'Left'
and 'Right'
instead.
You can easily check JavaScript KeyboardEvent
properties (e.key
, e.code
, e.which
,
e.keyCode
… and more) with Key.js: https://keyjs.dev.
I will add information about these kinds of cross-browser incompatibilities soon!
thanks so much guys for all the tips now I can make a game with wasd and arrow keys in HTML JS, you could even make a typingclub with this
Woah I didn't realize this gist was being looked at 😅
Thanks for the update Danzinger.
Glad it's been a help to you cLGitHubSOF and others. Cheers! 🍻
Cool thx for the key codes ;)
for some reason windows is causing me to hit key 218 when i focus a window
what does this all mean tho really my bad im new and trying to learn it but i really have a hard time understanding?