jQuery – 在运行fadeIn之前等待fadeOut完成
我想知道在fadeIn开始之前是否有任何方式等待fadeOut完成,就像我运行下面的代码一样,它将一个div放在另一个下面,然后当它淡出时它向上移动……看起来有点丑陋。
代码如下:
$('.sidebarform').fadeOut('slow'); $('.sidebarsuccess').fadeIn('slow');
fadeOut
函数有一个在动画完成时执行的回调:
$('.sidebarform').fadeOut('slow', function() { $('.sidebarsuccess').fadeIn('slow'); });
另一个选择是使用promise,等待.sidebarform上的所有待处理动画首先完成,即使它们是在其他地方启动的:
$('.sidebarform').fadeOut('slow').promise().done(function() { $('.sidebarsuccess').fadeIn('slow'); });