2012-11-11 76 views
0

我試圖根據實例來構建簡單的擴展: from herehere
,我必須在這裏做一些錯誤的。
所有我想要的是開始,每個頁面加載(或加載之前甚至更好),它會彈出 你好警報Chrome擴展腳本注入到每一個打開的標籤

的manifest.json

{ 
    "background": { 
     "page": "background.html" 
    }, 
    "content_scripts": [ 
    { 
     "matches": ["http://*/*","https://*/*"],  
     "js": ["jquery-1.8.2.min.js","contentscript.js"], 
     "run_at": "document_end" 
    } 
    ], 
    "web_accessible_resources": [ 
    "script_inpage.js" 
    ], 
    "browser_action": { 

     "default_popup": "popup.html", 
     "default_title": "Test 123" 
    }, 
    "content_security_policy": "script-src 'self'; media-src *; object-src 'self'", 
    "description": "Simple Test 123.", 

    "manifest_version": 2, 
    "minimum_chrome_version": "18", 
    "name": "Test 123", 
    "permissions": [ 
     "unlimitedStorage", 
     "http://*/", 
     "tabs", 
    ], 

    "version": "2.6" 
} 

background.html爲空現在

contentscript.js:

var s = document.createElement('script'); 
s.src = chrome.extension.getURL('script_inpage.js'); 
(document.head||document.documentElement).appendChild(s); 
s.onload = function() { 
    s.parentNode.removeChild(s); 
}; 

script_inpage.js:

alert("this is script"); 

即使在我觸發開發人員控制檯窗口時也沒有錯誤。

回答

1

你的清單文件是無效的,有一個多餘的逗號在"permissions"節的最後一個條目後:

"permissions": [ 
    "unlimitedStorage", 
    "http://*/", 
    "tabs", // <-- Remove that comma 
], 

如果你想你的腳本儘可能早地運行,使用"run_at": "document_start"代替"document_end"。然後,您的腳本將在<head><body>之前運行。

+0

感謝您的回答,當我的一些標籤即時獲取:無法加載資源 當我禁用分機,沒有錯誤(只是爲了確保它的延伸) – user63898

+1

@ user63898我不知道你在說什麼關於。你的問題描述是模糊的,你的清單文件是雜亂無章的功能。你能澄清你的意圖並闡述你遇到的問題嗎? –

+0

我只是希望能夠在每個頁面上觸發腳本(在這種情況下是簡單的警報) 。清單取自示例腳本,我發現 – user63898

相關問題