如果检测用户关闭所有窗口的一个网站? [英] Detect if user has closed ALL windows for a website?

查看:95
本文介绍了如果检测用户关闭所有窗口的一个网站?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道这一点:

window.onbeforeunload = function() {
   //tell server user has left your site
};

但有一个客户端的方式使用JavaScript来检测用户是否已经关闭所有浏览器窗口为您的网站?

but is there a client-side way to use javascript to detect if a user has closed ALL browser windows for your website?

或者我需要服务器端code检测呢?

Or do I need server-side code to detect this?

推荐答案

您可以保存一个信息到localStorage的检测任何存在。

You can save an info into LocalStorage to detect any existence.

的几点思考:负载你写的值到sessionStorage的:

Some thoughts: on load you write the value to the sessionStorage:

window.onload = function() {
    if (sessionStorage.instances) {
        sessionStorage = Number(sessionStorage.instances) + 1;
    } else {
        sessionStorage.instances = 1
    }
}

和上卸载减小该值:

window.onbeforeunload = function() {
    var instances;

    if (sessionStorage.instances) {
        instances = Number(sessionStorage.instances) - 1;
        sessionStorage.instances = instances;
        if (0 === instances) {
            // all instances closed
        }
    }
}


拉尔夫

Ciao Ralf

PS 并修改一点;)

PS: Example taken from http://www.w3schools.com/html/html5_webstorage.asp and modified a little ;)

这篇关于如果检测用户关闭所有窗口的一个网站?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆