1
function initKeys() {

    $(document).bind("keydown", "U", LoadPlayer);
}

window.onload = initKeys;

我想在按键时执行“LoadPlayer”功能u。我得到的是,对于任何按下的键,都会执行“LoadPlayer”。

HotKeys 库是这样添加的:

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

但是找不到。我把它放在和其他图书馆完全相同的地方。其他的没问题

我究竟做错了什么?

4

3 回答 3

1

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

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

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

于 2013-04-09T13:32:48.953 回答
0

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

于 2013-04-10T12:50:25.410 回答
0

您正在将 keydown 事件绑定到所有键上。“U”是您将传递给处理程序 loadPlayer (qv http://api.jquery.com/bind/ ) 的参数。而是直接绑定 keydown,并在 keycode 上对其进行过滤。

于 2013-04-09T13:16:52.960 回答