14

我刚刚开始学习如何为谷歌浏览器制作扩展程序。到目前为止我有一个非常基本的了解,所以我想尝试一些小的东西。

现在,我正在尝试在每次加载该页面时将图像附加到特定页面上的特定 div。扩展正确加载,但 javascript 代码似乎永远不会运行,并且图像永远不会加载。

这是我到目前为止的 manifest.json 文件:

{
    "manifest_version": 2,
    "name": "Icon Creator",
    "description": "Creates a custom icon for page",
    "version": "1.0",

    "content_scripts": [
    {
        "matches": ["file:///home/tijko/documents/learning/javascript/test_page.html"],
        "css": ["sample.css"],
        "js":["trial.js"]
    }
    ],
    "icons": {"icon": "icon.jpg"},
    "web_accessible_resources":["trial.js"]
}

和javascript:

var test = function() {
    custom_icon = document.createElement("img");
    target = document.getElementById("location");
    custom_icon.src = "icon.png";
    target.appendChild(custom_icon);
}
test()
4

1 回答 1

32

您是否尝试加载自己的扩展程序icon.png?现在您正在尝试加载icon.png本地页面的域和路径。相反,您应该这样做:

custom_icon.src = chrome.runtime.getURL("icon.png");

参考您的扩展程序的icon.png.

此外,您必须icon.png在您的web_accessible_resources. 此外,您不需要trial.js在您的列表中列出web_accessible_resources非常专业的用例除外)。

file://最后,您需要通过选中您的扩展程序列表下方的相应框来批准您的扩展程序访问页面chrome://extensions

于 2013-05-08T17:32:18.343 回答