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.
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.
Returns the lowercase name of a given numeric keycode.
keycode(13) // => 'enter'
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
Tests if an keyboard event against a given name or keycode.
Will return true
if the event matches the given name or keycode, false
otherwise.
// assume event is an keydown event with key 'enter'
keycode.isEventKey(event, 'enter') // => true
keycode.isEventKey(event, 'down') // => false
keycode.isEventKey(event, 13) // => true
keycode.isEventKey(event, 40) // => false
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