2012-05-19 22 views
5

我的manifest.json含有chrome.tabs.create被給了一個錯誤 - 「遺漏的類型錯誤:無法調用‘創造’的未定義」

"content_scripts": [ 
    { 
    "matches": ["http://www.facebook.com/*","https://www.facebook.com/*"], 
    "js": ["js/jquery-1.7.2.min.js", "js/jquery.livequery.min.js", "js/script.js"] 
    } 
] 

和的script.js的內容

$("#FB_HiddenContainer").livequery(function(){ 
    chrome.tabs.create({"url":"http://www.google.com"}); 
}); 

當我打開的Facebook,控制檯報告一個錯誤

遺漏的類型錯誤:無法調用「創造」的不確定

鉻擴展://whateveristhisweirdcode/js/script.js:2

我怎樣才能讓它打開新的標籤?

回答

18

內容腳本無法訪問大多數擴展API;只有在the content scripts doc中列出的那些才能工作。相反,使用window.open(「http://www.google.com」)(是的,這確實在Chrome中創建一個新標籤;不,不是 Chrome中的任何用戶設置將會改變這一點)。如果您需要更多的擴展API訪問權限,您可以使用message passing來代表內容腳本執行任務。

相關問題