浏览器允许卸载多少活动?

Mor*_*ris 9 html javascript browser events

我正在使用JavaScript在卸载该页面时跟踪用户在我页面上的活动.考虑以下简化的dummie脚本来模拟我在卸载时所做的事情:

$(window).unload(function() {
    $.get("http://www.google.de/images/srpr/logo3w.png");
});
Run Code Online (Sandbox Code Playgroud)

在这种情况下,图像URL用作跟踪数据的持有者.

关闭浏览器窗口时,某些浏览器(例如Firefox 3)会请求该图像,而其他浏览器(例如Firefox 6)中不会加载该图像.

可能不是它应该做的方式; 无论如何,只要我能说出卸载事件的可靠性,我就会坚持下去.

有这方面的经验吗?

M.L*_*.L. 8

我有一些经验,我会建议一个稍微不同的方法,如下所示:

$(window).unload(function() {
    new Image().src = "http://www.google.de/images/srpr/logo3w.png?timestamp=" 
           + new Date().getTime();
});
Run Code Online (Sandbox Code Playgroud)

挑战在于,如果要在卸载时进行AJAX调用,则应使用同步模式.使用普通的异步模式,它可能根本不会成功(例如在Chrome中).

但在这种情况下,使用图像的技巧同样可靠,因为通信只是一种方式.这适用于GET,但如果你需要POST一些东西,那么sync-mode是唯一的选择.