是否有任何库具有keyup / keypress keyCode规范化代码?

时间:2014-04-25 07:11:56

标签: javascript dom javascript-events keyboard

我正在寻找一些基本上将此处列出的浏览器怪异内容编码的内容:http://unixpapa.com/js/key.htmlhttp://www.javascripter.net/faq/keycodes.htm到我可以在javascript中使用的库中。最好是它会有这样的界面:

domNode.addEventListener("keyup",function(e) {
  if(SuperKeys(e.which) === SuperKeys.down) {
    // do some down action
  }
})

如果有一些方法可以轻松地在keypress keyCodes和keyup / keydown键码之间进行转换(使用适当的shift键修饰符),那也很好。

似乎jquery有一些规范化代码:http://api.jquery.com/event.which/。但是,我正在寻找一个可以添加到我的代码中的小型专用模块(我不想为此添加jquery)。

这样的事情存在吗?

2 个答案:

答案 0 :(得分:0)

我认为http://jonathan.tang.name/files/js_keycode/可能会做你正在寻找的事情。

旁注:看起来jQuery为which所做的就是:

if (!event.which) {
  event.which = event.charCode != null ? event.charCode : event.keyCode;
}

答案 1 :(得分:0)

经过一年的无所事事,我创建了keysight module以便更轻松地处理键盘事件。例如:

 domNode.addEventListener("keyup", function(event) {
    if(keysight(event).key === 'down') {
       // do some down action
    }
 })