重启jquery.fadeOut(),同时淡出

时间:2011-01-05 15:38:44

标签: jquery

我希望jquery fadeOut()在淡出的过程中重新启动。

我有以下声明

$('#status').html('<div style="padding:5px; margin:0 0 0 200px;"><img src="/images/done.png" /> ' + message + '</div>').show().fadeOut(2000);

当用户执行操作时,此语句将运行。 对于它正在运行的2秒,用户可以执行另一个调用此语句的操作。

此刻,fadeOut必须在fadeOut动画再次播放之前完成。

有没有办法让fadeOut再次从头开始重启?

5 个答案:

答案 0 :(得分:6)

在致电.stop()之前使用.fadeOut()

如果您希望从目标值开始,请使用.stop(true, true)

答案 1 :(得分:1)

您可以在致电fadeOut之前致电stop。这将重新启动fadeOut动画。否则,第二个fadeOut将在第一个之后排队。

答案 2 :(得分:1)

答案 3 :(得分:1)

使用

jQuery.stop().fadeOut() 

防止排队fadeOut动画。

.stop() can be used to prevent queueing any jQuery Animation 

http://api.jquery.com/stop/

答案 4 :(得分:0)

这很奇怪,但在我的情况下更好的方式是

//onclick 
  .stop(true, true).fadeIn().stop(true, true); //reset: stop old fadeOut and make visible again
  .fadeOut(); //again