谁关闭了浏览器标签?

时间:2013-01-15 22:22:53

标签: javascript html5 google-chrome

我有一个(WebRTC)Web应用程序在三个选项卡上运行:

  • 选项卡1重置数据库(删除任何现有数据,重新创建初始数据集)
  • Tab 2充当客户端#1,向服务器发送异步请求
  • Tab 3充当客户端#2,向服务器发送异步请求

我注意到,如果我重新加载标签1,其他标签中的一个或两个都会自行关闭(例如,从Chrome中的标签列表中移除)。我向IRC询问了Chrome开发人员,他们坚称Chrome会打印“Aw snap!”如果标签崩溃但不会将其从标签列表中删除。我相当肯定我自己的代码没有关闭页面。

如何确定关闭标签的人/谁?

2 个答案:

答案 0 :(得分:0)

我对Javascript或Chrome知之甚少,但我最近一直在进行一些套接字编程,如果服务器出现故障,客户端通常会崩溃,除非他们意识到服务器已断开连接并处理它(尝试/抓住声明)。我的建议是确保您的客户端能够处理服务器丢弃它们。

答案 1 :(得分:0)

我感到迟钝。

因此,在调查此问题的几天后,我发现我的代码在网络错误的情况下调用了一个函数,并且此函数正在调用close()。而不是解决我的班级' close()方法,它已解决为window.close()。猜猜接下来发生了什么? :)标签已关闭。

使这个问题特别困难的是两个特定于Chrome的错误:

简而言之:window.close()在不应该的时候有效,当它失败时它会默默无闻。

无论如何,我认为此事已经结束。我希望这有助于其他人避免在将来犯同样的错误。

相关问题