繁体   English   中英

如何在 Safari 中打开 url 而不是默认浏览器(JavaScript)?

[英]How to open a url in Safari instead of the default browser (JavaScript)?

我在我的应用程序的 webkit 视图中加载了 html 文件。 html 文件的作用类似于搜索引擎,并具有以下代码,当用户点击搜索操作时会触发该代码:

function search() {
    var input = document.getElementById("search_form_input_homepage").value;
    window.open("https://duckduckgo.com/?q=" + input);
}

但是,我需要结果 url 在 Safari 中打开。 截至目前,window.open 在默认浏览器中加载 url。 我如何实现这一目标?

我发现这个链接在 Safari 中讨论了不同的 url 方案。 但我对 JavaScript 很陌生。 这实际上是我第一次使用 JS。 所以我不明白如何实现这一点。 请问有人可以帮我吗?

我设法使用 Swift 做到了这一点。 我添加了以下 webkit 委托方法。

func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? {
        NSWorkspace.shared.open([navigationAction.request.url!], withAppBundleIdentifier: "com.apple.safari", options: .default, additionalEventParamDescriptor: nil, launchIdentifiers: nil)
    return nil
}

您无法通过 JavaScript 代码控制打开哪个浏览器,这与操作系统/用户默认选择有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM