检测应用程序的所有选项卡是否已关闭

8
我正在开发一个Web应用程序,在其中我希望用户只有在关闭我的应用程序的所有“选项卡”或关闭浏览器时才能注销。有人知道如何做吗?

1
这个问题以前已经出现过,唯一现实的方法是定期跟踪有多少个选项卡处于打开状态并“回应”,可能需要使用 onunload 来表示一个选项卡已被关闭。但是在Javascript中无法检测到实际的选项卡本身。你无法在Javascript中访问选项卡。你可以使用浏览器的ping来保持会话活动,并设置激进的(例如1-3分钟)会话超时时间。 - Jared Farrish
请点击这里查看:https://dev59.com/VnI-5IYBdhLWcg3wTWdu - Devnook
1个回答

1

在这里尝试答案:浏览器标签/窗口之间的JavaScript通信。Cookie是通常的方法。将其与“onunload”事件结合使用,您应该能够实现所需的功能。

不过,更简单的方法是将登录Cookie设置为“会话”,将生存期设置为0。在我使用的大多数浏览器中,这是在标签之间共享的,并且在窗口关闭时清除。唯一的问题是,Internet Explorer倾向于仅在关闭窗口而不是关闭网站的所有选项卡时清除会话Cookie。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接