Javascript 暂停用户退出页面
使用JavaScript(和/或jQuery),是否可以暂停用户退出页面一段时间,而不显示警报/确认Javascript 暂停用户退出页面,javascript,jquery,Javascript,Jquery,使用JavaScript(和/或jQuery),是否可以暂停用户退出页面一段时间,而不显示警报/确认 (假设用户单击其他页面或关闭窗口,计时器应启动三秒[在此期间发生某些事情],然后加载下一页或关闭窗口。)否。这是不可能的。充其量,您可以在卸载之前实现一个处理程序,但此时您的选项非常有限(您当然不能“等待3秒”) 浏览器会试图保护用户,所以这是浏览器强制执行的行为,他们有动机强制执行。不,这在现代浏览器中是不可能的 (此外,想想如果每个弹出窗口都这样做会有多烦人) 您所能做的最接近的事情是使用显
(假设用户单击其他页面或关闭窗口,计时器应启动三秒[在此期间发生某些事情],然后加载下一页或关闭窗口。)否。这是不可能的。充其量,您可以在卸载之前实现一个
处理程序,但此时您的选项非常有限(您当然不能“等待3秒”)
浏览器会试图保护用户,所以这是浏览器强制执行的行为,他们有动机强制执行。不,这在现代浏览器中是不可能的
(此外,想想如果每个弹出窗口都这样做会有多烦人)
您所能做的最接近的事情是使用显示对话框,但您要求避免这样做
但你为什么要这么做?
值得一提的是,这是一个神奇的时刻。您可能希望向服务器报告某些内容,但突然无法报告,因为用户正在离开。这是一种通常被认为是不好的做法,比如同步ajax可能会有意义。这在chrome和firefox中有效:
window.onbeforeunload = function() {
var now = new Date();
while( new Date() - now < 3000 );
};
window.onbeforeunload=函数(){
var now=新日期();
而(新日期()-现在<3000);
};
它也会耗尽电池电量,所以你是一举两得。@Bergi我添加了一个讽刺的转折点,不打算使用它,但你能解释一下为什么它会耗尽电池电量吗?因为它使用CPU,而不是正常等待