开发者

restart jquery.fadeOut() while it's fading out

开发者 https://www.devze.com 2023-02-02 08:43 出处:网络
I\'d like to have a jquery fadeOut() restart wh开发者_开发百科ilst it\'s in the middle of fading out.

I'd like to have a jquery fadeOut() restart wh开发者_开发百科ilst it's in the middle of fading out.

I have the following statement

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

When a user performs an action, this statement gets run. for the 2 seconds it's running, the user can perform another action which calls this statement.

At the moment, the fadeOut has to complete before the fadeOut animation will play again.

Is there a way to make the fadeOut simply restart from the beginning again?


Use .stop() before calling .fadeOut().

Optionally, use .stop(true, true) if you want it to start from the destination values.


You can call stop before calling fadeOut. That will restart the fadeOut animation. Otherwise, the second fadeOut will be queued after the first one.


How do you cancel a jQuery fadeOut() once it has began?

In short, call the .stop() method.


Use

jQuery.stop().fadeOut() 

to prevent queueing up the fadeOut Animation.

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

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


It's strange, but in my case better way was

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

精彩评论

暂无评论...
验证码 换一张
取 消