6

我已经使用js-hotkeys一段时间了,喜欢它。

我现在想绑定到?密钥,但这似乎不受支持。任何人都知道为什么以及如何绑定到?问号?

$(document).bind('keydown', '?',function (evt) {
    alert('go');
});

上面的代码不起作用。

4

4 回答 4

5

关于什么

$(document).bind('keyup', function (evt) {
    if (evt.keyCode == 191)
       alert("go");
});
于 2011-01-06T22:05:01.420 回答
3

我相信该事件有一个标志是否按下了 shift 键,所以你可能想要做这样的事情(我从来没有使用过 js-hotkeys,所以我可能完全错了):

$(document).bind('keydown', '/', function (evt)
{
  if (evt.shiftKey) //or whatever the flag for the shift key may be
  {
    alert('go');
  }
});
于 2011-01-06T22:12:06.907 回答
2

请注意,即使在输入框内也会触发以下内容:

$(document).bind('keyup', function (evt) {
    if (evt.keyCode == 191)
       alert("go");
});

解决方案:

$(document).bind('keyup', function(e) {
    if(e.keyCode === 191 && !$(e.target).is("input")) 
        alert("go");
});

请记住,同样的事情也会发生在texarea.

于 2011-03-25T20:58:25.043 回答
0

使用 js-hotkeys,您将使用字符串绑定问号:

shift+/
于 2015-06-30T18:48:56.657 回答