2012-07-18 4 views
27

基本的に要素ハイライター・クロム・エクステンションを作ろうとしています。 ワークフロー:私はそれが言うに表示されるポップアップを検査すると2 : は - ブラウザのアイコン をクリックしてください - - ページ をクリックして要素をhightlightクロム・エクステンション・コンテンツ・スクリプト・ブラウザ・アクション

をクリックした私はmanifest_versionを使用してブラウザの動作時にコンテンツのスクリプトを実行中にトラブルを抱えています"スクリプト-srcの '自己' クロム拡張リソース:"(popup.html:5):それは、次の コンテンツセキュリティポリシーの指示に違反しているため

はインラインスクリプトを実行することを拒否しました。

manifest.jsonを::

{ 
    "browser_action": { 
     "default_icon": "images/icon.gif", 
     "default_popup": "popup.html" 
    }, 
    "manifest_version": 2, 
    "description": "MEH!", 
    "name": "My First Extension", 
    "permissions": [ 
     "tabs", "http://*/*", "https://*/*" 
    ], 
    "version": "0.1" 
} 

popup.html:

を私は持っているpopup.htmlのインラインスクリプトがどこにあるかで、スクリプトが

動作しない

<html> 
    <head> 
    </head> 
    <body> 
    <script> 
     chrome.tabs.executeScript(null,{ 
     code:"document.body.style.backgroundColor='red'" 
     }); 
    </script> 
    <div id='msg' style="width:300px">...</div> 
    </body> 
</html> 

どのようなヘルプも非常に高く評価されます

+0

可能な二重に以下を含めますポップアップが機能しない、クリックイベントが処理されない](http://stackoverflow.com/questions/17601615/the-chrome-extension-popup-is-not-working-click -events-are-not-treated) – Makyen

答えて

44

私はあなただけの拡張子で

src="path_to_the_file.js" 
+3

まだ回答が得られない人は、http://stackoverflow.com/a/17612988/938089 –

+1

を参照してください。この回答は明確ではありません。体内の – Doug

+0

。したがって、を挿入する代わりに、ページのHTML内に別名というファイルを指すスクリプトを挿入します(HEADまたはwhat-ない) – Stefan

0

に必要なので、どうやらマニフェストv2は、あなたがインラインスクリプトを持ってすることはできませんここに

でそれを見るまで、私は適切にエラーを読み込むことができませんでし判明編@ tak3rの答えと@ Dougのコメント:

インラインスクリプトを外部スクリプトに変更する必要があります。

移動:新しいファイルに

<script> 
    chrome.tabs.executeScript(null,{ 
    code:"document.body.style.backgroundColor='red'" 
    }); 
</script> 

main.jsと呼ばれ、<script></script>タグ

を削除し、あなたのHTMLの<head></head> [Chromeの拡張機能の

<script type="text/javascript" src="main.js"></script> 
関連する問題