【问题标题】:Chrome Extension keep popup loadedChrome扩展保持弹出加载
【发布时间】:2014-02-27 17:17:43
【问题描述】:

我正在为一些互联网广播电台做扩展。目前它正在打开新窗口播放音乐,但我想做一个扩展。

我创建了弹出窗口并将互联网广播电台的 URL 作为 iframe 放入其中。问题是,当弹出窗口关闭时,iframe 也会关闭,音乐也会停止,这有点可悲。

关于如何在“关闭”时保持弹出内容加载的任何想法?

【问题讨论】:

  • 不应该是预期的功能吗?您只想在网站中插入音乐,而不让用户在关闭弹出窗口后停止播放?
  • 如果您想在扩展中建立持久连接,请查看后台脚本。

标签: javascript html google-chrome audio google-chrome-extension


【解决方案1】:

将清单设置为具有

"background": {
    "scripts": ["background.js"]
 },

然后,您可以在执行页面弹出窗口后以这种方式加载脚本,脚本将运行。

如果您这样做,我建议您在清单中添加停止、暂停和播放命令的关键命令。

 "commands": {
      "commands": {
      "Play": {
        "suggested_key": {
          "default": "Ctrl+Shift+U",
          "mac": "Command+Shift+U"
        },
        "description": "Toggle feature foo"
      },
      "Stop": {
        "suggested_key": {
          "default": "Ctrl+Shift+Z",
          "mac": "Command+Shift+D"
        },
        "description": "Toggle feature foo"
      }
  }

然后在您在清单中设置的背景文件中添加一个 chrome 侦听器

 chrome.commands.onCommand.addListener(function(command) {
    console.log('Command:', command);
    if(command == "Play"){
        //play function here
    }else if(command == "Stop"){
        //stop function here
    }
 });

【讨论】:

  • 这没有回答问题的基本部分(保持iframe 活着)。请扩展您的示例。此外,虽然您的建议很中肯,但没有必要,并且占了您回答的 80%。
  • 扩展 iframe 可以而且应该隐藏所有视觉提示并使默认主体透明,因此本质上,如果需要,您可以在点击时将其大小调整为 1px x 1px
  • 隐藏但仍会播放音频
猜你喜欢
  • 2017-06-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-03
  • 1970-01-01
  • 1970-01-01
  • 2011-09-27
相关资源
最近更新 更多