繁体   English   中英

Chrome扩展程序:如何获取扩展程序ID以加载本地图像?

[英]Chrome Extension: How to get Extension ID to load local images?

我创建了一个扩展程序,可以在我参与的游戏论坛的正文上插入/添加一个小菜单。 它附加了我创建的“ menu.html”和“ menu.js”文件。

在菜单中,每个游戏我只有很少的纸牌,并且每张纸牌都有固定大小的游戏图标。

我的问题:如何从“ / img / icons”扩展文件夹中加载本地游戏图标?

我可以使用以下网址从互联网上加载游戏图标:

<a id="imgBattlefield" href="#" target="_blank">    
   <img src="http://files.softicons.com/download/game-icons/battlefield-3-game-icons-by-exhumed/png/128x128/Battlefield%203_4.png"></img>
</a>

然后,我尝试仅使用如下所示的图标路径,但是它试图从网站而不是从扩展名加载图像:

<a id="imgBattlefield" href="#" target="_blank">    
   <img src="/img/icons/battlefield.png"></img>
</a>

我尝试直接在SRC路径上使用__ MSG _ @@ extension_id__调用,但是我很确定那不是它的工作方式:

<a id="imgBattlefield" href="#" target="_blank">    
   <img src="chrome-extension://__MSG_@@extension_id__/img/icons/battlefield.png"></img>
</a>

在“ menu.js”文件中,我还尝试过用下面的javascript替换SRC,但也没有成功:

var imgBattlefield = chrome.extension.getURL("img/icons/battlefield.png");
document.getElementById('imgBattlefield').src = imgBattlefield;

笔记:

清单文件已设置为使用图像:

"web_accessible_resources": ["menu.html", "*.jpg", "*.png", "/img/loader.gif"],

我想获取扩展ID,而不必设置一个固定ID并对其进行硬编码。

我想念的是什么?

得到它的工作! 由于某种原因,javascript行document.getElementById('imgBattlefield').src = imgBattlefield; 没有工作。 一旦我切换到jQuery $('#imgBattlefield').attr("src", imgBattlefield); src路径已正确替换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM