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

相關問題