在我的网页中,我有一个使用 Javascript 的 setTimeout()
的倒数计时器。
function Tick() {
if (RemainingSeconds <= 0) {
alert("Time is up.");
return;
}
RemainingSeconds -= 1;
ElapsedSeconds += 1;
UpdateTimerDisplay();
window.setTimeout("Tick()", 1000);
}
我还有一个在 onbeforeunload
上触发的功能,以“阻止”用户离开页面。
window.onbeforeunload = function () {
if (!isIEAjaxRequest) {
return "You should use the logout button to leave this page!";
}
else {
isIEAjaxRequest = false;
}
};
问题是,当出现“您确定要离开此页面吗?”时窗口提示,它暂停 setTimeout()
函数。关于如何防止这种情况的任何想法?
最佳答案
你不能。 Javascript 严格来说是单线程的,因此任何模式弹出窗口都会暂停其他所有内容。
关于javascript - 防止 onbeforeunload 函数暂停 Javascript 计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12731865/