1

我目前有一个带有 popup.html 浏览器操作的 Chrome 扩展程序。此弹出窗口允许用户在各个字段中输入值,选择不同的网站进行搜索,然后在新选项卡中搜索这些网站。我想做的是弥合自定义胖应用程序和此扩展程序之间的差距。即,当前填写的字段必须从其他应用程序复制/粘贴到此扩展程序中,但我想自动执行此操作。

我愿意接受有关执行此操作的最佳方法的建议。我的想法是通过命令行打开 chrome,但我找不到任何合适的开关来打开我的扩展弹出窗口。也不是如何合理地传递数据并在另一端使用它。任何想法/帮助将不胜感激。

4

2 回答 2

1

我的想法是在您的扩展程序中创建一个 HTML 页面,该页面将在选项卡中打开并执行与弹出页面相同的功能。您可以通过命令行通过其 URL 打开此页面,或者在每次启动 Chrome 时让您的 Chrome 扩展程序打开它。如果剪贴板中有数据,您应该能够以编程方式粘贴它。或者,您可以尝试通过将数据放入 HTML 页面 URL的锚点中,然后使用 JavaScript 读取锚点来传递数据。

不幸的是,这个想法不会打开弹出窗口,但它有望成为一个很好的替代品。

于 2013-06-25T02:11:46.440 回答
0

对于任何感兴趣的人,这里是我如何解决问题的细节。

  • 我按照此处所述在清单中设置密钥,以获取已知的应用程序 ID。
  • 正如建议的那样,我在 url 哈希后面传递了必要的数据。
  • 我在我的扩展程序中创建了一个新页面(称为 external-landing.html)。该页面包含一个 iframe,并且在 DOM 加载时,我将 src 设置为我的 popup.html 以及 url 哈希(使用这种js url 解析方法 - 认为它太聪明了不分享)。
  • 消费弹出窗口中的数据,就好像它已经在那里很久了
  • 从我们的胖应用程序中,执行以下命令:
    start chrome "chrome-extension://known-extension-id/external-landing.html#necessary-data"
于 2013-06-25T21:06:23.380 回答