gui*_*ido 5 html javascript navigation browser-history browser-tab
我寻遍SO这个问题已经被 问 前 几 次,但是我发现没有答案,解释如何我想实现的行为实际上是实现了.
我想到的是模仿booking.com功能,当你从搜索结果列表中打开搜索结果时,会出现一个div,表示结果已在另一个选项卡(或窗口)中打开,并且当它崩溃时其他标签(或窗口)已关闭.
截图: 
第一次尝试是检查某些javascript是否已附加到链接,但事实并非如此,因为如果您只是从页面源复制URL并打开它,则该功能可以正常工作.
所以我认为它可以在服务器端管理,启动wireshark尝试捕获两个打开的页面和服务器之间的任何ajax调用.有很多请求,但似乎没有人传递所需的信息(我想酒店ID或一些网址).另请注意,在隐身窗口或其他浏览器(我的意思是,firefox而不是chrome)窗口中打开结果项URL(包括会话ID)会破坏该功能; 这样就排除了任何会话或IP地址跟踪.
我可以想到的最后一次尝试是搜索结果页面正在轮询一些cookie,该cookie在打开另一个页面时在域上设置,并在关闭时取消设置.所以我检查了一些cookie,其内容实际上有点神秘,但我所看到的是,在其他标签打开和关闭时实际上没有更改cookie,所以,再次,它不能以这种方式完成.
还剩什么?
小智 2
理论上,应该可以使用 localStorage/sessionStorage 来完成此操作,方法是在每个页面上设置当前页面 URL,并每隔一段时间检查“原始”页面上的值是否与 不同document.location。
如果您还在存储中设置了当前时间,则可以通过查看“最后一个选项卡时间”是否超过 30 秒前等来检查页面是否已关闭。
至于该网站,我访问了它并进行了搜索,当我尝试它时,没有看到任何警告或任何有关打开新选项卡的信息。
| 归档时间: |
|
| 查看次数: |
289 次 |
| 最近记录: |