2

如何在 safari 浏览器中使用 java 脚本获取浏览器窗口或活动选项卡 URL?

我尝试使用 ->

文档.url

window.location.href

但是这两种解决方案都给了我这么多的网址。我不知道为什么?

我还搜索了 safari.application.browserWindow.activeTab 给出了当前活动窗口的 obj 。但是我不知道activeTab类提供了哪些方法

如果有人知道,请帮助我。提前致谢。

4

1 回答 1

3

如果您只想要当前选项卡中“顶部”文档的 URL,您可以使用

safari.application.activeBrowserWindow.activeTab.url

从您的扩展程序的全局页面中。

SafariBrowserTab 类的属性和方法在这里给出:https ://developer.apple.com/library/safari/#documentation/UserExperience/Reference/SBrowserTabClassReference/SafariBrowserTab.html#//apple_ref/doc/uid/TP40009793

我从您的问题推断出您的扩展程序正在使用注入脚本,该脚本将运行它的页面的 URL 报告给全局页面。您的全局页面正在接收多个 URL,因为注入的脚本不仅在选项卡的“顶部”文档中运行,而且还在其中的每个 iframed 文档中运行。

如果要防止注入的脚本在 iframe 中运行,请将代码包装在如下语句中:

if (window == window.top) {
    // do stuff
}
于 2012-08-26T20:52:21.800 回答