我需要每20秒一个接一个地运行3个jquery动作。

我需要:


fadeOut() #recent
然后当完成时click() .next
然后再次fadeIn #recent()


不确定它有什么区别,但是.next#recent的子级。

这是我到目前为止的内容:

$('#recent').fadeOut();
$('#recent .next').click();
$('#recent').fadeIn();


问题是在fadeOut()完成之前单击触发。

谢谢
C

最佳答案

问题是click会立即调用模拟事件,因为它不是动画事件队列的一部分。

容易的是对fadeOut使用[oncomplete]回调:

$('#recent').fadeOut(function () {
  $('#recent .next').click()
}).fadeIn()


请注意,fadeIn动画已在动画队列中注册,因此即使不在回调中也能“按预期工作”。

快乐的编码。

10-07 23:46