HTML中的绝对路径不起作用

Arnaudambro

我正在尝试使用小的JavaScript代码构建HTML模板。这是东西...从根本上讲,我建立了两个文件:
index.html

<!DOCTYPE html>
<html lang="fr">
<head>
  <title>HTML Template</title>
  <!-- Header initialized with /header-footer.js -->

</head>
<body>

  <footer>
    <!-- Footer initialized with /header-footer.js -->
    <script type="text/javascript" src="/headerfooter.js"></script>
  </footer>
</body>
</html>

headerfooter.js

(function () {

    /*************** HEADER *****************/
    const headerBeforeAppend = document.querySelector('head')

    document.querySelector('head').innerHTML = `
      ${headerBeforeAppend.innerHTML}

      <meta charset="UTF-8">
      <meta content="width=device-width,initial-scale=1" name="viewport">

      <!-- CSS -->
      <!-- Google fonts -->
      <link href="https://fonts.googleapis.com/css?family=Montserrat:100,400,700" rel="stylesheet">
      <!-- Bootstrap, Materialize, etc... you see the idea -->

      <!-- Javascript -->
      <!-- Fontawesome -->
      <script src="https://use.fontawesome.com/45d80bbe59.js"></script>
      <!-- jQuery, Bootstrap scripts, etc... you see the idea -->
    `

    /*************** FOOTER *****************/

    const footerBeforeAppend = document.querySelector('footer')

    document.querySelector('footer').innerHTML = `
      ${footerBeforeAppend.innerHTML}

      <!-- JQuery (for Bootstrap) -->
      <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
      <!-- Bootstrap CDN v4 alpha-->
      <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
      <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
    `

    })()

这个想法是,当我在浏览器中加载index.html时,要有headerfooter.js脚本来编写我的<head>部分以及需要<footer><links>部分<script>

当对于我的脚本来说,我编写的代码是脚本:的相对路径时,它实际上工作得很好<script type="text/javascript" src="headerfooter.js"></script>,但对于根目录的绝对路径却不起作用<script type="text/javascript" src="/headerfooter.js"></script>这是一个问题,因为我希望这是一个模板,这样我就可以在将要在我的Web文件夹中创建的每个html页面中包含此脚本,而不必每次都重新编写路径。我在某处犯错了吗?

(PS:尝试构建这样的模板是一种不好的做法吗?)

萨曼尼

您如何运行页面将很重要。

如果您尝试通过file://协议运行它(只需打开index.html),则绝对路径将无法正确解析。您将需要以某种方式运行本地服务器(有数十种方法可以执行此操作,这取决于您使用的是什么,这个问题的范围太大)。

如果您正在运行某种本地服务器(例如http://localhost),请尝试直接使用打开文件http://localhost/headerfooter.js如果这不起作用,则说明文件与您认为的位置不符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Crontab的绝对路径不起作用

绝对路径在带图像的gatsby中不起作用?

绝对路径在 create-react-app 中不起作用

绝对路径在 Vite 项目 React TS 中不起作用

相对 Xpath 在 Maven TestNg 中不起作用,但绝对路径有效

FadeInImage.assetNetwork 需要绝对路径。占位符的相对路径不起作用。(颤抖中)

PHP require_once绝对路径与相对路径(不起作用)

除非路径是绝对路径,否则在Flask应用程序中引用目录不起作用

葡萄酒不起作用!错误:WINEPREFIX中的无效目录prefix32:不是绝对路径

在docker run命令中使用绝对路径不起作用

xlink:href`属性的SVG绝对路径不起作用

提供与我启动节点进程的目录无关的目录的绝对路径不起作用

为什么 url() 函数的绝对路径不起作用?

为什么我可以在 XAML 中检索具有绝对路径的图像,但它在代码后面不起作用?

PUG中的绝对路径

fopen()中的绝对路径

在PHP中创建绝对路径

Spring Boot 中的绝对路径

FileInputStream(“ hello.txt”),除非我指定了绝对路径(C:\ User \ Documents等),否则它将不起作用

创建绝对路径

Jsoup绝对路径

如何在PowerShell中基于相对路径或绝对路径获取绝对路径?

从绝对路径+相对或绝对路径创建新的绝对路径

用绝对路径反应渲染HTML脚本标签

在本地文件系统上的HTML中设置根目录的绝对路径

在cpio归档文件中创建绝对路径

无法在Maven插件中定义绝对路径

Windows 上 build.gradle 中的绝对路径

在Java中绝对路径打开文件