【问题标题】:Is there any way to invoke an external URI scheme?有什么方法可以调用外部 URI 方案?
【发布时间】:2015-03-24 21:57:05
【问题描述】:

有没有办法通过使用我的扩展代码中的(已经注册的)URI 方案来启动应用程序?

我想通过 background.js 监控一些东西,并通过 URI 方案自动启动一个应用程序

【问题讨论】:

  • 不清楚你在问什么。让我们看看我是否理解你:有一个应用程序已经注册了某个方案(例如,steam:)并且你想调用它?或者您想为还没有方案的外部应用添加方案?
  • 没错。我有一个已经注册的应用程序,我想启动它。

标签: javascript google-chrome-extension uri-scheme


【解决方案1】:

您可以通过将iframe 附加到您的背景页面来做到这一点。

再次以 Steam 为例:

var frame = document.createElement("iframe");
frame.src = "steam://open/main";
// Needs to be inserted into document to trigger load
document.body.appendChild(frame);
document.body.removeChild(frame);

【讨论】:

  • 我只有一个 background.js 文件,我没有 html 文件。那么,它不起作用吗?
  • 是的,确实如此,我在发布之前进行了测试。 Chrome 会生成一个插入了脚本的空白 HTML 文档,您可以像往常一样使用 DOM 方法对其进行操作。它实际上并不是一个可见的文档。
猜你喜欢
  • 1970-01-01
  • 2010-10-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-30
相关资源
最近更新 更多