停止fadin / fadeout事件jquery

时间:2015-06-15 10:02:01

标签: javascript jquery animation event-handling

点击时我有一次闪光潜水。如果多次按下按钮,它将一直闪烁,直到执行了点击计数。我想这样,如果用户多次点击该按钮,它将在最后一次点击后停止闪烁。

示例https://jsfiddle.net/va6njdry/

$('button').click(function () {
    $('div').fadeOut().fadeIn().fadeOut().fadeIn();
});

1 个答案:

答案 0 :(得分:5)

使用stop停止以前的动画。

$('button').click(function () {
    $('div').stop(true, true).fadeOut().fadeIn().fadeOut().fadeIn();
    //       ^^^^^^^^^^^^^^^^
});

演示:https://jsfiddle.net/tusharj/va6njdry/1/

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

  

停止匹配元素上当前正在运行的动画。

修改

感谢@AWolff

您也可以使用finish

$('button').click(function () {
    $('div').finish().fadeOut().fadeIn().fadeOut().fadeIn();
    //       ^^^^^^^^
});

演示:https://jsfiddle.net/tusharj/va6njdry/4/

文档:https://api.jquery.com/finish/

  

停止当前正在运行的动画,删除所有排队的动画,并完成匹配元素的所有动画。