1

从浏览器扩展 (BHO) 中,我想知道将用户引至当前页面的 URL。我以为我可以获取 document.referrer,但如果在新窗口中打开链接,我发现它是空白的。这只是强硬的 bikkies 还是我可以在某些情况下使用 opener.location.href 或其他什么?

作为后续,我目前在页面加载时得到这个,即在 DocumentComplete 上,但我更喜欢在 BeforeNavigate2 上得到它。除了在 BeforeNavigate2 上使用当前位置作为引荐来源网址之外,我看不到任何其他方法,但是如果用户在地址栏中输入新 URL,这将为我提供当前页面作为引荐来源网址。即,看起来他们从站点 A 上的链接导航到站点 B,实际上他们去了站点 A,然后输入站点 B 的 URL。

更新:据我所知,有时会设置“opener”属性(如果窗口已从 javascript 打开?),因此我们可以从中获取有效的引用页面。任何人都知道具体在哪些情况下可用?

4

2 回答 2

0

获取此信息的唯一方法是从HTTP 引荐来源网址,因此不幸的是,对于该标头值为空白的任何情况,您都可能不走运。

于 2010-01-19T01:45:59.543 回答
0

除非您拥有包含指向新窗口的链接的页面,并添加哈希或 id 或标识会话或链接的内容,否则您将无法捕获引荐来源网址。

于 2010-01-19T01:53:31.850 回答