是否有一个jQuery事件在所有效果运行完毕时触发

时间:2009-01-20 19:41:09

标签: jquery

标题解释了这个问题,否则当页面上的所有效果都在运行时,是否可以调用函数?

2 个答案:

答案 0 :(得分:3)

你可以像这样嵌套你的动画

$('#Div1').slideDown('fast', function(){
   $('#Div2').slideUp('fast');
});

顺序完成......

您也可以这样做:

var animations = 0;
checkAnimation(1);
$('#Div1').slideDown('fast', function(){
   checkAnimation(-1);
});

checkAnimation(count){
   animations += count;
   if(count == 0)
      //animations complete
   }
   else {
       //still animating
   }
}

希望这有帮助。

答案 1 :(得分:2)

您可以使用 .queue 来获取您所使用的功能。如果队列的长度为0,您将知道对象上的所有动画都已完成。

Documentation