【问题标题】:Strange behaviour with relative and absolute paths in Chrome extension popupChrome扩展弹出窗口中的相对和绝对路径的奇怪行为
【发布时间】:2020-03-22 21:53:44
【问题描述】:

我的 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次,文件名没有问题,文件夹结构也完全正常。

【问题讨论】:

  • 如果这是最终编译文件的内容,那么它是 Chrome 中的一个错误。如果这是源 html 文件,那么您的编译器必须更改图像的 URL。

标签: html google-chrome-extension


【解决方案1】:

回答我自己的问题:由于某种原因,当我将 files/ 的内容直接放在根文件夹中时,问题得到了解决。我猜 chrome 扩展在嵌套目录中存在某种错误

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-12
    • 2012-05-07
    • 2011-10-31
    • 1970-01-01
    相关资源
    最近更新 更多