Javascript 停止多个项目上的jquery动画
我有一个函数,在调用时触发一系列动画。我想能够停止所有的动画时,链接被单击。代码如下:Javascript 停止多个项目上的jquery动画,javascript,jquery,animation,Javascript,Jquery,Animation,我有一个函数,在调用时触发一系列动画。我想能够停止所有的动画时,链接被单击。代码如下: var slogan = false; function slogan_slide(){ slogan = true; if($('#slogan').is(':visible')){ $('#slogan_1').fadeIn(500); $('#slogan_2').delay(1300).fadeIn(500); $('#slogan_3'
var slogan = false;
function slogan_slide(){
slogan = true;
if($('#slogan').is(':visible')){
$('#slogan_1').fadeIn(500);
$('#slogan_2').delay(1300).fadeIn(500);
$('#slogan_3').delay(2600).fadeIn(500);
$('#slogan_4').delay(3900).fadeIn(500, function(){
$('#slogan_1').delay(3000).hide();
$('#slogan_2').delay(3000).hide();
$('#slogan_3').delay(3000).hide();
$('#slogan_4').delay(3000).fadeOut(500, function(){
$('#home_content').fadeIn(500);
slogan = false;
});
});
}
}
function slogan_stop(){
$('#slogan_1').stop(true).fadeOut(500);
$('#slogan_2').stop(true).fadeOut(500);
$('#slogan_3').stop(true).fadeOut(500);
$('#slogan_4').stop(true).fadeOut(500);
$('#home_content').stop(true).fadeOut(500);
}
$(document).on('click','a', function(){
if(slogan) slogan_stop();
});
这将停止所有动画,除了将#home_内容回调到fadeIn。如何防止回调发生?只是一个建议:您是否尝试过使用这两个布尔值
.stop(true,true)
?我看到您当前的.stop调用只有一个布尔值。stop(true)
。第二个布尔值告诉jQuery立即跳到动画的末尾。不确定这是否会有帮助…我不想跳到fadeIns的末尾,因为屏幕上会突然出现所有东西。你能提供这方面的信息吗…嗯,你可能想看看这个:你可能可以通过其中一个方法(例如回调empty
方法)直接访问回调.