【发布时间】:2013-03-06 01:29:09
【问题描述】:
我通过 SO 搜索,这个问题有 been asked before several times,但我没有找到解释我想要实现的行为如何实际实现的答案。
我的想法是模仿booking.com的功能,当您从搜索结果列表中打开搜索结果时,会出现一个表示该结果已在另一个选项卡(或窗口)中打开的div,并且它当其他选项卡(或窗口)关闭时消失。
截图:
第一次尝试是检查链接是否附加了一些 javascript,但事实并非如此,因为如果您只是从页面源中复制 url,然后打开它,该功能就会起作用。
所以我认为它可以在服务器端以某种方式进行管理,启动了 Wireshark 以尝试捕获两个打开的页面和服务器之间的任何 ajax 调用。有很多请求,但似乎没有人传递所需的信息(我猜是酒店 ID 或一些 url)。另请注意,在隐身窗口或另一个浏览器(我的意思是,firefox 而不是 chrome)窗口中打开包含会话 ID 的结果项 URL 会破坏该功能;这样就排除了任何会话或 IP 地址跟踪。
我能想到的最后一次尝试是搜索结果页面正在轮询一些 cookie,该 cookie 在打开另一个页面时在域上设置,在关闭时取消设置。所以我检查了 cookie,其内容实际上有点难以理解,但我看到的是在其他选项卡打开和关闭时实际上没有更改任何 cookie,所以再次,它不能这样做。
还剩下什么?
【问题讨论】:
标签: javascript html navigation browser-history browser-tab