html - Chrome扩展弹出窗口中的相对和绝对路径的奇怪行为
问题描述
我的 chrome 扩展的弹出 html 将 JS 和 CSS 文件的路径视为相对于 html 的父文件夹,但其他类型的文件则视为相对于父文件夹的父文件夹。
这是我的文件夹结构:
root
↳ manifest.json
↳ assets
↳ popup.html
↳ css
↳ js
↳ images
↳ fonts
在 popup.html 中,像这样的标签可以正常工作:
<link href="css/popup.css" rel="stylesheet">
<script type="text/javascript" src="js/popup.js"></script>
但是这个失败了 net::ERR_FILE_NOT_FOUND
<img src="images/example_image.svg">
奇怪的是,如果我将图像路径更改为:
<img src="assets/images/example_image.svg">
^这可行,但我不知道为什么,因为路径应该相对于 CSS 和 JS 文件所在的同一目录。
我已经检查了100次,文件名没有问题,文件夹结构也完全正常。
解决方案
回答我自己的问题:由于某种原因,当我将 files/ 的内容直接放在根文件夹中时,问题得到了解决。我猜 chrome 扩展在嵌套目录中存在某种错误
推荐阅读
- bitnami - Bitnami Consul Gossip 加密
- html - 在自动对焦 html5 输入日期字段 angularjs 上打开日期选择器
- c - 是否只有基于系统调用的功能?
- javascript - 使用角管html将日期从yyyymmdd转换为yyyy/mm/dd甲酸盐
- node.js - 如何在 Sequelize 中进行全局错误处理
- java - Java服务器上Google App Engine中的CORS错误
- machine-learning - 虚拟变量 - 这些二进制变量的值可以大于 1 吗?
- docker - 为什么 Traefik 在后端网络上发现容器 IP 地址?
- sql - Google Cloud SQL 导入 2005 备份失败
- python-3.x - AttributeError:“NoneType”对象没有属性“image_data_format”keras