通过浏览器关闭/注销时的 JavaScript 代码

JavaScript code when closing/logging out via browser

本文关键字:JavaScript 代码 注销 浏览器      更新时间:2023-09-26
<script type="text/javascript">
    leaveSiteStart = new Date;
    function leftSite() {
        var leaveSiteEnd = (new Date - leaveSiteStart);
        var roundleaveSiteEnd = Math.round(leaveSiteEnd, 1);
        _gaq.push(['pageTrackerTime._trackEvent', 'Category', 'Action', document.getElementById('Name').value]);
    }
    window.onbeforeunload = leftSite;
</script>

我使用此代码在关闭浏览器或注销后离开页面之前刺穿用户在页面上花费的持续时间。

但它未能赶上事件...代码有什么问题吗?

在现代浏览器中,捕获用户离开基本上是不可能的。当FF4问世时,他们打破了使用定时while循环暂停退出的方式。

由于_gaq是异步调用,因此浏览器不会等到调用完成,因此请尝试执行一些同步调用。

在jQuery ajax中,您可以通过将async标志设置为false来执行同步任务,检查是否有相同的方法可以做到这一点。