开始后取消/停止jquery fadeOut

Mac*_*Man 7 time jquery fadeout

我有一个非常简单的页面,当用户点击页面上的特定条目时,它会显示状态更新.

这一切都很好.第一次单击id='sts'使用正确的输出更新 ,6秒后消失.

然而,如果用户点击另一个链接时它会逐渐消失,DIV会使用新文本进行更新,但它会根据原始淡出超时时间逐渐消失.

无论如何让DIV更新再次启动淡入淡出计数器?

这就是我目前用来进行div更新的内容.

$('.first').click(function () {
    $("#sts").html('first update 1').show().fadeOut(6000);
});

$('.next').click(function () {
    $("#sts").html('second update 2').show().fadeOut(6000);
});

$('.last').click(function () {
    $("#sts").html('dinal update 3').show().fadeOut(6000);
});
Run Code Online (Sandbox Code Playgroud)

谢谢

Mil*_*war 5

您需要使用.stop([clearQueue] [,jumpToEnd])

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

$("#sts").stop(true,true).html('first update 1').show().fadeOut(6000);
Run Code Online (Sandbox Code Playgroud)

使用停止工作演示

根据A.Wolff的建议:

您可以.finish()替代.stop(true,true)

完():

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

$("#sts").finish().html('first update 1').show().fadeOut(6000);
Run Code Online (Sandbox Code Playgroud)

使用Finish的工作演示