如何在Safari浏览器中使用java脚本获取浏览器窗口或活动标签页?
我尝试使用 - >
进行操作document.url
window.location.href
但这两种解决方案都给了我很多网址。我不知道为什么?
我也搜索过safari.application.browserWindow.activeTab给出了当前活动窗口的obj。但我不知道activeTab类提供了哪些方法
如果有人知道,请帮助我。提前谢谢。
答案 0 :(得分:2)
如果您只想要当前标签中“顶部”文档的网址,则可以使用
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
}