【问题标题】:How to open Chrome with extension popup open?如何在扩展弹出窗口打开的情况下打开 Chrome?
【发布时间】:2013-06-21 19:23:01
【问题描述】:

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

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

【问题讨论】:

    标签: google-chrome-extension


    【解决方案1】:

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

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

    【讨论】:

    • 一个很好的替代品正是我正在寻找的,谢谢!我在下面发布了我的解决方案的细节。
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-16
      • 2018-10-01
      • 2021-10-20
      • 1970-01-01
      • 2017-12-29
      相关资源
      最近更新 更多