JS将键盘快捷键绑定到函数

JS bind a keyboard shortcut to a function

本文关键字:函数 绑定 快捷键 键盘 JS      更新时间:2023-09-26
function initKeys() {
    $(document).bind("keydown", "U", LoadPlayer);
}
window.onload = initKeys;

我想在按u键时执行函数'LoadPlayer'。我得到的是,对于任何按下的键'LoadPlayer'被执行。

热键库是这样添加的:

<script language="javascript" type="text/javascript" src="./libraries/jquery.hotkeys.js"></script>

但是找不到。我把它放在和其他图书馆一样的地方。其他的没有问题

我做错了什么?

试试这个,它应该可以工作。它检查匿名函数中按下的键(以便您可以根据需要添加尽可能多的热键)。

$(document).ready(function(){
    $(document).bind("keydown", function(e){ 
        e = e || window.event;
        var charCode = e.which || e.keyCode;
        if(charCode == 85) LoadPlayer();
    });
});

演示:http://jsfiddle.net/HULgw/(运行后点击结果块,使keydown事件被监听:))

在所有键上绑定keydown事件。"U"是传递给处理程序loadPlayer (q.v http://api.jquery.com/bind/)的参数。而是直接绑定keydown,并在keycode中进行过滤。

尝试从javascript src路径中删除。/。还要检查热键库的文件权限