通过Chrome扩展(JS)添加图像到HTML
我做了一个扩展,需要在每个页面上放置一个固定的图像。 内容脚本是:通过Chrome扩展(JS)添加图像到HTML
imgTop = chrome.extension.getURL('top.png'); var top = document.createElement("img");
top.src=imgTop;
top.position='fixed';
top.zIndex='2353445';
top.top='200';
top.left='20';
document.getElementsByTagName('body')[0].appendChild(top);
我得到的错误:Uncaught Error: NotFoundError: DOM Exception 8
我试过和不工作:
- 增添风采e.g
top.style.position
。 - 使用
document.body
。
我知道我可以使用innerHTML
,但真的很乱......
任何想法有什么不好?或者另一种方式来注入图像?
回答:
这里的问题似乎是您的变量名为top
,Chrome与window.top
属性混淆。更改变量名其他东西,它应该工作,像这样:
var topImage = document.createElement('img'); topImage.src = chrome.extension.getURL('top.png');
topImage.style.position = 'fixed';
topImage.style.zIndex = '2353445';
topImage.style.top = '200px';
topImage.style.left = '20px';
document.body.appendChild(topImage);
一些其他的事情:样式属性通过element.style.property
访问,如果你正在做的事情的身体只使用document.body
。另外,不需要为图片网址设置单独的变量,只需直接拨打topImage.src
就可以了,尤其是如果您只调用一次。
回答:
您是否将top.png添加到manifest.json中?
您需要定义web_accessible_resources属性并列出资源(以及可选的资源单独的内容安全策略)。
Chrome扩展文件的网址:https://developer.chrome.com/extensions/manifest.html#web_accessible_resources
以上是 通过Chrome扩展(JS)添加图像到HTML 的全部内容, 来源链接: utcz.com/qa/265503.html