0

我正在为 Firefox 编写一个扩展,将图像添加到当前网页。虽然它不应该是一个问题,但下面的代码片段不起作用。我得到了一个 50px/50px 的矩形,即图像的边框,但是图像本身并没有显示出来。

var img = document.createElement("img");
img.style.border = "1px solid #000";
img.style.width = "50px";
img.style.height = "50px";
img.setAttribute("src", "chrome://myExtension/content/images/add-icon.png");

它也不适用于来自外部结果的图像。添加 div 环境似乎有效。img.src="..." 不会改变任何东西。

我尝试将图像添加到 div。添加 div.length 后增加了 1。所以不知何故一切正常,除了图像不显示。有什么提示吗?

谢谢和最好的问候,

基督教

4

2 回答 2

1

您是否设置了内容可访问?

https://developer.mozilla.org/en/chrome_registration#contentaccessible

为了使非 chrome 内容中的 chrome 图像等可用,它是必需的。

于 2011-08-02T10:45:20.630 回答
1
var body = content.document.getElementsByTagName("BODY").item(0);
var img = document.createElement("img");
img.src = "chrome://myExtension/content/images/add-icon.png";
var divBox = document.createElement("div");
divBox.appendChild(img);
body.appendChild(divBox); 

正如评论中所讨论的,始终使用“content.document”,而不是混合使用“content.document”和“document”。

于 2011-08-02T12:51:04.923 回答