相关疑难解决方法(0)

使用jQuery/JavaScript进行关键组合

我很好奇我是如何使用以下jQuery插件代码在这个问题的底部写的,可以实现关键的组合.到目前为止它是如何工作的,它允许用户只需通过正常的jQuery语法创建键命令,并为键命令提供事件,如下所示:

$(window).jkey('a',function(){
   alert('you pressed the a key!');
});
Run Code Online (Sandbox Code Playgroud)

要么

$(window).jkey('b c d',function(){
   alert('you pressed either the b, c, or d key!');
});
Run Code Online (Sandbox Code Playgroud)

最后我想要的是能力,但无法弄清楚:

$(window).jkey('alt+n',function(){
   alert('you pressed alt+n!');
});
Run Code Online (Sandbox Code Playgroud)

我知道如何在插件外部执行此操作(在keyup上设置var false并在keydown上设置var true并检查当你按另一个键时var是否为真),但我不知道如何执行此操作你不知道将要按什么键和多少键.如何添加此支持?我希望能够让他们做这样的事情alt+shift+a或者a+s+d+f,如果他们想要的.我无法理解如何实现这一点.有任何想法吗?

我将把它作为一个开源插件发布,我很乐意给予任何给予我权利,工作的人,在博客文章和代码中回答一些信用.提前致谢!

(function($) {
  $.fn.jkey = function(keyCombo,callback) {
    if(keyCombo.indexOf(' ') > -1){ //If multiple keys are selected
        var keySplit = keyCombo.split(' ');
    }
    else{ //Else just store this single key
        var keySplit = [keyCombo];
    }
    for(x in keySplit){ //For each key in the array...

        if(keySplit[x].indexOf('+') > …
Run Code Online (Sandbox Code Playgroud)

javascript jquery plugins keyboard-shortcuts jkey

7
推荐指数
2
解决办法
3799
查看次数

标签 统计

javascript ×1

jkey ×1

jquery ×1

keyboard-shortcuts ×1

plugins ×1