Jquery keydown活动每隔二年才开始工作?

时间:2013-10-18 17:55:13

标签: javascript jquery keydown keycode

基本上我已经创建了一个缩略图库,您可以使用左箭头和右箭头滚动浏览。右箭头事件完全正常,所以我假设左箭头事件将是相同的,除了( - )值。但是,当我按下左键时,它每隔一秒才会进入上一个缩略图。

有人可以查看我的代码,让我知道我错过了什么吗?谢谢!

$(document).bind("keydown", function(event) {

if (event.keyCode == 39)
{   
    $("#thumbnail img").each(function(i) {

        if ($(this).hasClass("currentThumb"))
        {
            currentSelectionIndex = i;

            $("#thumbnail img").removeClass("currentThumb").addClass("thumb");  

            if (currentSelectionIndex == 14 && parseInt($('#end').text()) < parseInt($('#total').text()))
            {
                nextImages(currentCategory.value);  
            }
        }   
        if(i == currentSelectionIndex + 1)
        {
            $(this).removeClass("thumb").addClass("currentThumb");
            $(this).parent().click();
        }
    });
}

if (event.keyCode == 37)
{   

    $("#thumbnail img").each(function(i) {

        if ($(this).hasClass("currentThumb"))
        {
            currentSelectionIndex = i;

            $("#thumbnail img").removeClass("currentThumb");
            $("#thumbnail img").addClass("thumb");  

            if (currentSelectionIndex == 0  && parseInt($('#start').text()) > 1)
            {
                prevImages(currentCategory.value);  
            }
        }   
        if(i == currentSelectionIndex - 1)
        {
            $(this).removeClass("thumb").addClass("currentThumb");
            $(this).parent().click();
        }
    });
}

});

2 个答案:

答案 0 :(得分:0)

它可能会使用keyup代替keydown。我有一些问题。如果它不起作用,请使用http://jsfiddle.net,以便我们可以更轻松地解决它。

答案 1 :(得分:0)

反转您的选择应该足以让它反过来。

$.fn.reverse = [].reverse; // at the top of your code


// in the event handler for left arrow
$("#thumbnail img").reverse().each(function(i) {

不要忘记更改回+