简化hotkeys.js功能

时间:2013-06-06 02:25:37

标签: javascript keyboard-shortcuts

有没有办法简化此代码而不必重复相同的信息?...

shortcut.add("b",function() {
    $(".show_hide").trigger('click');  
    },{
    'disable_in_input':true
});

shortcut.add("a",function() {
    $("#about").trigger('click');  
    },{
    'disable_in_input':true
});

shortcut.add("w",function() {
    $(".show_hide_header").trigger('click');  
    },{
    'disable_in_input':true
});

shortcut.add("r",function() {
    $(".show_hide_l").trigger('click'); 
       },{
    'disable_in_input':true 
});

shortcut.add("up",function() {
    $("#prev").trigger('click');   
       },{
    'disable_in_input':true
});

shortcut.add("down",function() {
    $("#next").trigger('click');   
       },{
    'disable_in_input':true
});

适用于键盘快捷键http://www.openjs.com/scripts/events/keyboard_shortcuts/

1 个答案:

答案 0 :(得分:1)

var selectors = {'b': '.show_hide', 'a': '#about', 'w': '.show_hide_handler' },
    i;

function shortcutListener(selector){
    return function(){
         $(selector).trigger('click');
    }
}

for ( i in selectors){
    shortcut.add(i, shortcutListener(selectors[i]), {'disable_in_input' : true});
}