0

私はクロムエクステンションを書く方法を学んでいます。ブラウジングを使ってウェブページの背景色を変えることができます。私は本当に似たようなことをしようとしています。しかし、何らかの理由...それは働いていない、jsの機能は次のとおりです。BrowserActionで背景画像を設定する

function click(e) { 
    chrome.tabs.executeScript(null, 
     {code:"document.body.style.background=url('ffrontier.jpg')"}); 
    window.close(); 
} 

誰も私を助けることができる、私はそれが私のsintaxについて何かあるかなり確信しているが、私はそれを把握するカント?ありがとうございました

答えて

0

プロパティ(ページの背景色を参照)ではなく、background-imageプロパティを変更する必要があります。

function click(e) { 
    chrome.tabs.executeScript(null, 
     {code:"document.body.style[background-image]=\"url('ffrontier.jpg')\""}); 
    window.close(); 
} 

何か注意する:あなたは、変数名に-記号を使用することはできませんのでdocument.body.style.background-imageはエラーをスローします。

document.body.style[background-image] 
+0

助けてくれてありがとうございますが、まだ動作していません – xiidarkevil

+0

画像URLが有効であることを確認してください。 –

+0

すでにチェックされていますが、イメージの名前です..... ""については何もありませんか? – xiidarkevil

1

UPDATE:URLのような唯一の外部URL(http://www.stackoverflow.com)仕事、NOTローカルファイルを代わりに、オブジェクト構文を使用する必要があります。ごめんなさい。 私は単に引用符を削除しましたurl()と私のために働いている!

function click(e) { 
    chrome.tabs.executeScript(null, 
     {code:"document.body.style.backgroundImage = 'url(ffrontier.jpg)'"}); 
} 
2

あなたはmanifest.jsonをファイルにリソースを指定する必要がまず第一(Web Accessible Resourcesを参照)、このような:

"web_accessible_resources": ["ffrontier.jpg"] 

第二に、あなたはこのような完全な画像のURLを指定する必要があります。

function click(e) { 
    chrome.tabs.executeScript(null, 
     {code:"var imgURL = chrome.extension.getURL('ffrontier.jpg'); document.body.style.backgroundImage='url(' + imgURL + ')'"}); 
    window.close(); 
} 
関連する問題