在浏览器扩展(BHO)中,我想知道将用户指向当前页面的URL。我以为我可以只获取document.referrer,但我发现如果在新窗口中打开链接,它就是空白的。这是不是只是个硬汉,或者我可以在某些情况下使用opener.location.href,或者其他什么?
作为后续,我目前在页面加载时得到了这个,即在DocumentComplete上,但我更喜欢在BeforeNavigate2上得到它。除了在BeforeNavigate2上使用当前位置作为引用之外,我看不到任何方法,然而,如果用户在地址栏中输入新的网址,这将使我获得当前页面作为引用。即看起来他们从站点A上的链接导航到站点B,实际上他们转到了站点A,然后输入了站点B的url。
更新:据我所知,有时会设置'opener‘属性(如果窗口是从javascript打开的?)因此,我们可以从中获得有效的推荐人页面。有没有人知道这在哪些情况下是可用的?
发布于 2010-01-19 09:46:00
获取此信息的唯一方法是从HTTP referrer获取,因此不幸的是,对于头值为空的任何情况,您可能都不太走运。
发布于 2010-01-19 09:53:32
除非您拥有链接到新窗口的页面,并为会话或链接添加散列或id或其他标识,否则您将无法捕获引用。
https://stackoverflow.com/questions/2090527
复制相似问题