从内容脚本引用时,扩展中的图像显示为断开的链接
我为Chrome扩展程序编写了一个小内容脚本,用于在网页中插入图像,但是当我观看已处理的网页时,图像看起来好像链接已损坏。
该图片位于Chrome扩展程序的根目录下。 我正在使用扩展API中的getURL函数:
$('This is my image');
当我检查网页时,我看到URL是:
我无法弄清楚我做错了什么。 请帮助我,我被困住,无能为力。
编辑:注意:链接确实是正确的,因为当我点击“在新标签页中打开图像”时,图标会正确显示。
那是什么答案? “使用旧的清单,你很高兴”,当然使用最新! 老了。 它被折旧了。
阅读文档: https : //developer.chrome.com/extensions/content_scripts#extension-files
你可以使用扩展名2的扩展名文件。
//Code for displaying /images/myimage.png: var imgURL = chrome.extension.getURL("images/myimage.png"); document.getElementById("someImage").src = imgURL;
您还必须将您的图像添加到web_accessible_resources,您将使用外部扩展,例如内容脚本将其插入到某个用户的网站: https : //developer.chrome.com/extensions/manifest/web_accessible_resources
manifest.json的:
{ ... "web_accessible_resources": [ "images/*.png", "style/double-rainbow.css", "script/double-rainbow.js", "script/main.js", "templates/*" ], ... }
您可以将清单版本降级为已弃用的版本(使用1而不是2),但是您在v2世界中应该这样做的方式是使用web_accessible_resources
将您打算嵌入页面的资产列入白名单, 在此处描述。
这是因为清单v2中资产的默认可用性发生了变化:
默认可用性
默认情况下,使用manifest_version 2或更高版本的软件包内的资源被阻止,并且必须列入白名单才能通过此属性使用。
正如PAEz所说,问题在于我的"manifest_version" : 2
有"manifest_version" : 2
。