加载外部脚本时无法加载资源错误

时间:2015-06-24 20:53:07

标签: javascript html css

我尝试将文件夹中的外部脚本加载到我的createnew.html文件中,并且我一直收到此错误消息说无法找到:

  

无法加载资源:服务器响应状态为404(未找到)

我试图在代码的head中加载脚本,如下所示:

<head>
    <!--C3 CSS script-->
    <link href="./scripts/c3.css" rel="stylesheet" type="text/css">
    <!--C3 JS script-->
    <script src="./scripts/c3.min.js"></script>
</head>

我的文件排列如下:

->public
 ->views
 -createnew.html
  ->scripts
  -c3.css
  -c3.min.js

请帮助我理解为什么这不起作用。

随着这个问题变得比预期更受欢迎,我决定将其他问题指向正确的方向:

我们假设您已经按照以下方式组织了文件:

-  server.js
-> MyWebsite(folder)
   -  index.html
   -> js(folder)
      - myscript.js

您使用的路径是相对于&#34;工作目录&#34;你在。

  1. 当不使用服务器,并且只在您的计算机上本地开发网站时,此工作目录将是从index.html文件到脚本的相对路径。在这种情况下,它将是./js/mysript.js
  2. 使用服务器时,您需要告诉它该工作目录的位置。对于Node.js,您可以执行类似app.use(express.static('./MyWebsite'))的操作,/js/myscript.js
  3. 将引用您的js文件

    请注意,从服务器加载时,前缀为/而不是./,因为/实际上只是服务器托管文件的URL的一部分,而{ {1}}特定于文件系统。

2 个答案:

答案 0 :(得分:0)

更改

"./scripts/c3.css"

"scripts/c3.css"

答案 1 :(得分:0)

您可以参考this question 关于HTML中文件的相对路径。
要引用当前文件夹, ./仅适用于非严格的doctype模式,而.适用于两种模式。 因此,您可以尝试"scripts/c3.css"而不是"./scripts/c3.css"