Swift 在safari应用程序扩展弹出窗口中从WKWebView html内容打开新选项卡
我正在开发一个浏览器扩展,它在chrome和safari之间共享代码,基本上是一个html页面,我在safari应用扩展上的WKWebView中加载它(在chrome扩展上加载一个iframe) 除了在safari应用程序扩展弹出窗口中无法打开的链接(如果它们具有Swift 在safari应用程序扩展弹出窗口中从WKWebView html内容打开新选项卡,swift,safari,popover,safari-extension,Swift,Safari,Popover,Safari Extension,我正在开发一个浏览器扩展,它在chrome和safari之间共享代码,基本上是一个html页面,我在safari应用扩展上的WKWebView中加载它(在chrome扩展上加载一个iframe) 除了在safari应用程序扩展弹出窗口中无法打开的链接(如果它们具有target=“\u blank”或类似于facebook登录的弹出窗口)外,所有功能都正常 有人知道是否有可能让safari像在普通safari选项卡中单击一样打开它们吗 我试图查看WKWebView是否在我的html内容中设置了一个
target=“\u blank”
或类似于facebook登录的弹出窗口)外,所有功能都正常
有人知道是否有可能让safari像在普通safari选项卡中单击一样打开它们吗
我试图查看WKWebView是否在我的html内容中设置了一个全局safari
对象,但似乎没有,因此这不起作用(导致ReferenceError:找不到变量:safari
)
以下是我在SafariExtensionViewController中加载web视图的方式:
override func viewDidLoad(){
super.viewDidLoad()
...
self.view.addSubview(webView)
webView.navigationDelegate=self
...
加载(“\(基本url)?url=\(当前url)”)
}
以及使加载
部件工作的扩展:
扩展WKWebView{
func加载(urlString:String){
如果let url=url(字符串:urlString){
let request=URLRequest(url:url)
加载(请求)
}
}
}
Safari技术预览77(2019年3月6日),可能是常规Safari的12.1.x版 使window.safari对象在打开到safari extension://resources的框架中可用
因此,如果你采用这种方法,你应该没问题。Safari技术预览77(2019年3月6日),很可能是常规Safari的12.1.x版 使window.safari对象在打开到safari extension://resources的框架中可用 所以,如果你用这种方法,你应该没问题