函数,"queue",只能执行一次吗?



这是我的代码

$('.project, .list').click(function(){
    $( ".c3_home" ).addClass('c3_left2').delay(400).queue(function(){
    $(this).addClass('c3_right');
});
});
$('#back').click(function(){
    $('.c3_home').removeClass('c3_right c3_left2');
});

在前两次单击中,会添加和删除类,但在第三次单击中只添加了c3left,而没有添加c3right。

您必须清除队列:

$( ".c3_home" ).clearQueue().addClass('c3_left2').delay(400).queue(function(){
    $(this).addClass('c3_right');
});

您可以尝试使用finish():(jq1.9>){它应该清除队列中的所有元素}

$( ".c3_home" ).finish().addClass('c3_left2').delay(400).queue(function(){
    $(this).addClass('c3_right');
});

正如Kevin所建议的,也尝试一下:

$( ".c3_home" ).addClass('c3_left2').delay(400).queue(function(next){
        $(this).addClass('c3_right');
        next();
    });

最新更新