通过Javascript创建的图像未显示

时间:2011-08-02 10:19:45

标签: javascript image firefox-addon createelement

我正在为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.所以一切都正常,但图像不显示。任何提示?

谢谢和最诚挚的问候,

基督教

2 个答案:

答案 0 :(得分:1)

您是否设置了contentaccessible?

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

为了使铬图像等可以从非铬内容中获得,这是必需的。

答案 1 :(得分: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”。