javascript - 在 chrome 扩展中使用 content.js 为按钮添加图像
问题描述
我正在尝试content.js
在 Chrome 扩展程序中使用向网页添加一个按钮,但我最终没有加载源图像。这是我的content.js
代码:
var confirmButton = document.createElement('div');
confirmButton.innerHTML = '<button><img src="../images/logo_balloon.png" /></button>';
document.body.appendChild(confirmButton);
当我检查开发人员模式并检查按钮时,将鼠标悬停在图像源上后,会出现以下链接:
https://www.example.com/images/logo_balloon.png
我创建了 HTML 文件并复制了上面的代码,图像出现在那里。我在哪里犯错?你能帮我吗?
解决方案
为了将应用程序/扩展安装目录中的相对路径转换为完全限定的 URL,您可以使用
const url = chrome.runtime.getURL('./your-relative-path-here');
但在这种情况下,您可能需要将此资产标记为清单文件中的 Web 可访问资源(请参阅此处的详细信息)。
另一种选择(我认为最简单的选择)是将图像转换为 Base64。在线提供大量编码器
<img src="data:image/png;base64,aBVORw..." />
推荐阅读
- sql - 对第一个查询中不匹配的数据运行第二个查询
- linux - 当值为 0 时存储 grep -c 输出时脚本终止
- wpf - wpf DelegateCommand 返回不触发
- javascript - Sublime 文本中的自定义选项卡名称(用于“索引”文件)
- mysql - Mysql'如果不存在则插入',防止'重叠'
- azure - Azure IoT Hub,通过代理上传文件?
- scala - 当 Task 从不同的词法范围引用时,Monix TaskLocal 似乎没有反映来自 bind() 调用的值
- c# - 根据条件更改列表框项的颜色
- reactjs - 如何正确使用 react-router-dom No match 404?
- python - 在 Python 脚本中使用正则表达式