我想知道将 setTimeout 设置为变量有什么用
scroll_timer = window.setTimeout(function () { ...
当我可以使用时
window.setTimeout(function () { ...
实际上是否需要清除超时?第 2 行
$window.scroll(function () {
window.clearTimeout(scroll_timer);
scroll_timer = window.setTimeout(function () { // use a timer for performance
if($window.scrollTop() <= top) // hide if at the top of the page
{
displayed = false;
$message.fadeOut(500);
}
else if(displayed == false) // show if scrolling down
{
displayed = true;
$message.stop(true, true).show().click(function () { $message.fadeOut(500); });
}
}, 100);
});
最佳答案
当您想在调用回调之前(即在设定的时间之前)停止计时器时,可以使用clearTimeout
var timer = setTimeout(callback, 1000);
clearTimeout(timer);
此处未调用回调。
关于javascript - 将 setTimeout 设置为变量有什么用以及是否需要clearTimeout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3194030/