【问题标题】:detect if all the tabs of application is closed检测应用程序的所有选项卡是否已关闭
【发布时间】:2011-12-03 10:53:16
【问题描述】:

我正在开发一个网络应用程序,因为我想注销用户,只有当他关闭我的应用程序的所有“标签”或用户关闭浏览器时。

有人知道怎么做吗?

【问题讨论】:

  • 这已经出现过,唯一现实的方法是跟踪有多少是打开的并定期“回拨”,可能有一个onunload 表示一个已经关闭。但是,您无法在 Javascript 中检测到实际的选项卡本身。您无权访问 Javascript 中的选项卡。您可以使用来自浏览器的 ping 来保持会话活动,并使用激进的(例如 1-3 分钟超时)会话超时。

标签: javascript web-applications


【解决方案1】:

在这里尝试答案:Javascript Communication Between Browser Tabs/Windows。 Cookie 是执行此操作的常用方法。将这些与“onunload”事件结合起来,您应该能够完成您所需要的。

虽然通过将生存期设置为 0 来简单地将您的登录 cookie 设置为“会话”会更容易。这在我使用的大多数浏览器中的选项卡之间共享,并在窗口关闭时被清除。唯一的问题是,除非关闭窗口,否则 Internet Explorer 往往不会清除会话 cookie,而不是当网站的所有选项卡都关闭时。

【讨论】:

    猜你喜欢
    • 2021-01-11
    • 1970-01-01
    • 2022-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多