网页关闭后会发生什么?

时间:2014-07-29 06:46:44

标签: javascript html ajax html5

1)网页关闭时后台会发生什么?

2)如何让网络服务器认为页面仍在查看中,以便我的脚本可以运行?

我会发布一些代码,但我不知道从哪里开始,寻找一些术语和建议的方法来追求,而不一定是代码示例。

示例:

假设我有一个javascript,一旦用户访问该页面需要运行一段时间,但用户在完成之前会关闭该页面。

如果我可以(伪造)连接为活着(即使用户离开),直到脚本完成?

2 个答案:

答案 0 :(得分:3)

网页关闭时后台会发生什么?

unload事件被触发和处理,脚本执行被停止,所有webworkers被杀死,所有内容都被清除,等等。

如何让网络服务器认为页面仍在查看中,以便我的脚本可以运行?

然而 可以在您的页面中启动ajax请求,当客户端中止请求时,该请求不会被服务器杀死。例如,在php中,您应该在ignore_user_abort()处查看。

答案 1 :(得分:1)

您可以尝试在离开页面之前警告用户,并告诉他仍有一些工作需要完成 - 但除此之外,用户仍然可以关闭窗口/选项卡,您的脚本将中止。

要警告用户,请尝试以下操作:

window.onbeforeunload = function() {
    return 'Just give me a minute, please';
};