jQuery通过按键隐藏元素

时间:2014-08-04 08:51:35

标签: jquery keypress

我试图通过按键盘上的右箭头隐藏所有按钮(或我选择的任何其他元素)。任何人都知道什么是错的?

$("body").keyPress(function(key){
    if (key.which == 39){
        $("button").hide();
    }
});

哈哈哇谢谢

3 个答案:

答案 0 :(得分:3)

keypress(),更改:

$("body").keypress(function(key){
    if (key.which == 39){
        $("button").hide();
    }
});

最好使用keydown(),因为:

    使用Shift,Esc和Delete& 永远不会触发
  1. keypress() 某些浏览器中的
  2. keypress()将由箭头键触发,但不是跨浏览器

答案 1 :(得分:1)

您无法使用keypress检测箭头键(因为it is fired only for printable characters),请改用<{3}}

$("body").keyup(function (key) {
    console.log(key.which)
    if (key.which == 39) {
        $("button").hide();
    }
});

演示:keyup

答案 2 :(得分:0)

尝试

$("body").keydown(function(e) { 

而不是KeyPress,其箭头键。

检查jQuery keypress left/right navigation