为箭头键运行两个keydown代码

时间:2014-09-04 14:04:10

标签: javascript jquery

我在同一页面上有两个区域我希望箭头键做某事(两件不同的事情)。

问题是,如果我有以下代码,则只执行一次。

   $(document).keydown(function (evt) {
        if (evt.keyCode == 37) {          
            evt.preventDefault();
            // CODE
        } else if (evt.keyCode == 39) { 
            evt.preventDefault();
            // CODE
        }
    });

   $(document).keydown(function (evt) {
        if (evt.keyCode == 37) {          
            evt.preventDefault();
            // CODE
        } else if (evt.keyCode == 39) { 
            evt.preventDefault();
            // CODE
        }
    });

我怎么能拥有这两个被执行?我无法看到如何使用类,如箭头键,而不是点击功能。

1 个答案:

答案 0 :(得分:1)

jQuery有一个:visible元选择器:http://jsfiddle.net/8rgnzmk5/1/

$(document).keydown(function (evt) {
    if (evt.keyCode == 37 || evt.keyCode == 39) {          
        evt.preventDefault();

        if (evt.keyCode == 37) {
            if ($target.is(':visible')) {
                // left, visible
            } else {
                // left, invisible
            }
        } else if (evt.keyCode == 39) {
            if ($target.is(':visible')) {
                // right, visible
            } else {
                // right, invisible
            }
        }
    }
});