我正在尝试包含5个我写入HTML文件的javascript文件。
但是,有一条错误消息表明文件无法加载。
源代码:
<html class="gr__2k8dc"><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Toilet partition tool</title>
<link rel="stylesheet" href="C:\Users\Downloads\3dmodelproject\files\style.css">
<script src="C:\Users\Downloads\3dmodelproject\files\three.js"></script>
<script src="C:\Users\Downloads\3dmodelproject\files\STLLoader.js.download"></script>
<script src="C:\Users\Downloads\3dmodelproject\files\OrbitControls.js.download"></script>
<script src="C:\Users\Downloads\3dmodelproject\files\resources.js.download"></script>
<script src="C:\Users\Downloads\3dmodelproject\files\toiletpartition.js.download"></script>
</head>
错误消息:
有任何疑问路径格式有什么问题?谢谢!
答案 0 :(得分:5)
如其他地方所述,您的路径是绝对路径,而不是相对路径。基本上这意味着,您是否已经对资产的位置(脚本/ css / images /等)进行了硬编码,使得部署网站变得非常困难,或者在本地驱动器上移动站点的位置。
此外,它会导致跨源请求(您看到的实际错误)出现问题。使用相对路径可以解决该问题,因为您保证引用相同的来源。
您在评论中提到,html文件为:C:/Users/Downloads/3dmodelproject/files/Toiletpartitiontool.html
因此,这里的相对位置是
C:/Users/Downloads/3dmodelproject/files
然后引用
C:\Users\Downloads\3dmodelproject\files\three.js
,您只需使用three.js
。
因此,您的页面应为:
<html class="gr__2k8dc">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
<title>Toilet partition tool</title>
<link rel="stylesheet" href="style.css">
<script src="three.js"></script>
<script src="STLLoader.js.download"></script>
<script src="OrbitControls.js.download"></script>
<script src="resources.js.download"></script>
<script src="toiletpartition.js.download"></script>
</head>
<body>
<!-- Content here -->
</body>
</html>
答案 1 :(得分:0)
原因是只有IE / Windows对C:/
尝试将驱动器更改为一系列../
其中每一个都会提升文件夹级别1。最终它将到达驱动器/域的根目录,然后将文件夹下载到您的文件中。根据您运行的位置,html文件将决定要添加多少../
。 Linux和Mac不使用Windows驱动器盘符,因此这也与OS兼容。
链接将变为:
../../../../Users/Downloads/3dmodelproject/files/STLLoader.js.download
我90%确定这是你遇到的问题
答案 2 :(得分:-1)
原因可能是您的\
,html需要/
但奖金:
您可以将脚本作为index.html的相对路径吗?
使路径像<script src="/3dmodelproject/files/three.js"></script>