Simple map of keyboard codes.
$ npm install keycode
$ component install timoxley/keycode
var keycode = require('keycode');
document.addEventListener('keydown', function(e) {
console.log("You pressed", keycode(e))
})
keycode
tries to make an intelligent guess as to what
you're trying to discover based on the type of argument
you supply.
##keycode(keycode:Event)
Returns the name of the key associated with this event.
document.body.addEventListener('keyup', function(e) {
console.log(keycode(e)) // prints name of key
})
Due to the keypress event being weird,keycode
currently does not support the keypress
event, but this should not be an issue as keydown
and keyup
work perfectly fine.
##keycode(keycode:Number)
Returns the lowercase name of a given numeric keycode.
keycode(13) // => 'enter'
##keycode(name:String)
Returns the numeric keycode for given key name.
keycode('Enter') // => 13
// keycode is not case sensitive
keycode('eNtEr') // => 13
Common aliases are also supplied:
> for (var alias in keycode.aliases) { console.log(alias, keycode(keycode(alias))) }
ctl ctrl
pause pause/break
break pause/break
caps caps lock
escape esc
pgup page up
pgdn page down
ins insert
del delete
spc space
Key code/name maps are available directly as keycode.codes
and keycode.names
respectively.
keycode.names[13] // => 'enter'
keycode.codes['Enter'] // => 13
project : keycode
repo age : 3 years, 8 months
active : 29 days
commits : 66
files : 13
authors :
49 Tim Oxley 74.3%
4 jkroso 6.1%
3 Amir Abu Shareb 4.5%
1 Greg Reimer 1.5%
1 Kenan Yildirim 1.5%
1 Abel Toledano 1.5%
1 Sam 1.5%
1 TJ Holowaychuk 1.5%
1 Yoshua Wuyts 1.5%
1 Nathan Zadoks 1.5%
1 Brenton Simpson 1.5%
1 Brian Noguchi 1.5%
1 Gilad Peleg 1.5%
Original key mappings lifted from http://jsfiddle.net/vWx8V/ via http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes