这是我目前的代码。它可以工作但是当运行另一个事件时(例如通过单击按钮)我需要它来停止并重置fadeOut。
代码
$('#selector').delay(5000).fadeOut('slow');
animate
或setTimeOut
代替delay
?示例
在我的情况下,我在屏幕顶部有一个状态栏,如果我点击更新状态栏的内容,它就不会消失。
答案 0 :(得分:3)
重置计时器
在设置计时器之前调用此方法。如果我像疯了一样点击,它会阻止计时器芬兰语。它会停止并重置计时器。
clearTimeout(my_timer);
设置计时器
my_timer = setTimeout(function () {
$('#selector').fadeOut('slow');
}, 5000);
答案 1 :(得分:1)
只需在淡入淡出元素上调用.stop()
方法:( #selector2
是停止淡入淡出的按钮)
$('#selector2').click(
function()
{
$('#selector').stop();
}
);
答案 2 :(得分:0)
查看函数clearQueue() https://api.jquery.com/clearQueue/