当前位置: 首页 > 知识库问答 >
问题:

/How使用java脚本在Safari浏览器中获取活动的Tab url

申屠泳
2023-03-14

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

我试着用-

document.url

window.location.href

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

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

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

共有1个答案

洪河
2023-03-14

如果您只想在当前选项卡中显示“top”文档的URL,可以使用

safari.application.activeBrowserWindow.activeTab.url

从扩展的全局页面中。

SafariBrowserTab类的属性和html" target="_blank">方法如下所示:https://developer.apple.com/library/safari/#documentation/UserExperience/Reference/SBrowserTabClassReference/SafariBrowserTab.html#//apple_ref/doc/uid/TP40009793

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

如果您想防止注入的脚本在iframe中运行,请将代码包装成这样的语句:

if (window == window.top) {
    // do stuff
}
 类似资料:
  • 问题内容: 我已经使用docker安装了Jenkins,尽管我已经跳过了手动设置。当我构建映像并运行它时(仍然有很多事情要做),我需要在浏览器中键入IP和端口以打开Jenkins仪表板。 我的问题是,我可以在运行该映像的泊坞窗中使用脚本自动执行构建的Jenkins应该在浏览器中打开的工作吗? 任何需要运行的命令,请对其进行注释 我试图通过命令打开浏览器,但最终出现错误。任何人都可以使用我的自动化工

  • 我有一个selenium代码,它在Windows 7 for Safari浏览器上成功运行,但当我在MAc机器上运行Safari Browser中的类似代码时。 但我犯了一个错误。它正在打开新的Safari浏览器,但没有点击URL。我的代码是:= 我也浏览了官方网站,但是也没有用。 我得到的错误是:-线程“main”<code>org.openqa.selenium.remote中出现异常。无法访

  • 问题内容: 我将如何使用浏览器版本? 问题答案: 该属性是一个字典,其中包含有关浏览器本身的信息,因此这应该可以工作:

  • 本文向大家介绍javascript 获取浏览器版本,包括了javascript 获取浏览器版本的使用技巧和注意事项,需要的朋友参考一下 工作中需要通过JS去获取当前使用的浏览器的名字以及版本号,网上大堆资料都有一个关键词是 navigator.appName,但是这个方法获取的浏览器的名字只有两种要么是IE要么就是Netscap,倒是可以用来判断是否使用了IE,但是我想获取具体的浏览器产品名字比如

  • 问题内容: 如何使用JavaScript检测Safari浏览器?我在下面尝试过代码,它不仅可以检测Safari,还可以检测Chrome浏览器。 问题答案: 您可以轻松地使用Chrome的索引来过滤掉Chrome:

  • 问题内容: 想知道是否可以用一个小的PHP包装程序从浏览器中执行,因为我无权访问服务器的外壳程序。 不确定是否可以使用cURL做到这一点? 问题答案: 是的,您可以使用一个小的PHP包装器来运行Composer。Phar文件中提供了所有Composer源代码,因此可以提取该源代码,然后在设置InputInterface替换Composer后运行它,并期望通过命令行传递命令。 如果您这样设置目录结构