0

我需要一个简单的按键绑定(右箭头),但我不能让它工作我不知道我应该用什么链接 .keypress() 方法并且变量只是不会输入键代码。它会在按键时做出反应(它记录在控制台上)但不是我想要的。我不能使用任何插件或 jquery UI。

    $("*").keypress(function(e){
        console.log(e); //this returns [object object]
        if (e.which == 39 || e.keyCode == 39 || window.event.keyCode == 39){
            $('.someDiv').click();
        };
    });

有任何想法吗?

4

2 回答 2

2

您可以使用该document对象,还请注意 jQuery 规范化该which属性并且它是跨浏览器的:

$(document).on('keyup', function(event){
    if (event.which == 39){
        $('.someDiv').click();
    };
});
于 2012-08-18T19:51:33.013 回答
2

keypress似乎不会在箭头键上触发,所以这样的东西怎么样:

$(document).on('keyup', function(e){
    if (e.which == 39){
        $('.someDiv').trigger('click');
    }
});

此外,jQuery 规范化e.which和绑定到文档似乎是一个更好的主意,而不是遍历 DOM 中的每个元素。

小提琴

于 2012-08-18T19:52:18.887 回答