1

captureVisibleTab[docs]在我的Google Chrome浏览器扩展中似乎不适用于我,我一直试图让它在基于浏览器操作的扩展模式下运行,但每次返回的图像都是undefined。然后我下载了the example created by Google,这也似乎不起作用,返回undefinedwhite.png(空白的白色图像)作为图像srccaptureVisibleTab returned undefined

我试过在两个项目的manifest.json文件中设置了对"tabs", "<all_urls>"的权限。我有谷歌浏览器37.

我一直在试图找到答案,但我没有看到任何可靠的信息,有没有一个错误,是否有修复它?如果没有解决方法,有没有其他的选择?

谢谢,基督徒。

编辑:我应该让这部分更清楚。我下载了Google示例,安装了它,在code.google.com上运行了扩展程序,并返回了一个空白图像see screenshot

+0

澄清:您下载并安装了Google示例应用程序,在'code.google.com'上的页面上进行了测试,并生成了空白图片? – apsillers 2014-09-03 19:53:15

+0

这是正确的,是的! – Chris 2014-09-03 19:54:13

回答

2

有在这里打球两个错误:

  1. 需要<all_urls>许可(crbug.com/339703)。
  2. chrome.tabs.onUpdated永远不会为新打开的扩展选项卡中的扩展页面触发(crbug.com/411225)。

解决第一个错误的方法是在清单文件的权限部分声明<all_urls>;第二个错误的解决方法是不使用chrome.tabs.onUpdated事件来检测是否更新选项卡,但使用message passingchrome.runtime.getBackgroundPage来获取新打开的扩展页面中屏幕截图的数据URL。 (请注意,因为chrome-extension:-URLs are hidden from the webNavigation API),您无法使用webNavigation而不是使用选项卡API检测新选项卡。

+0

啊,我明白了,错误的组合让我感觉到了。现在就工作,感谢您的帮助! – Chris 2014-09-04 15:03:14

相关问题