我试图包含 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>
错误消息:
知道路径格式有什么问题吗?谢谢!
最佳答案
正如其他地方提到的,您的路径是绝对路径,而不是相对路径。从本质上讲,这意味着您已经对 Assets (脚本/css/图像/等)的位置进行了硬编码,使得部署网站或在本地驱动器上移动网站的位置变得非常困难。
此外,它还会导致跨源请求出现问题(您看到的实际错误)。使用相对路径可以解决该问题,因为您保证引用相同的源。
您在评论中提到,html 文件为:C:/Users/Downloads/3dmodelproject/files/Toiletpartitiontool.html
因此,这里的相对位置是
C:/Users/Downloads/3dmodelproject/files
以便以后引用
C:\Users\Downloads\3dmodelproject\files\third.js
,您只需使用third.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>
关于JavaScript 文件无法通过给定路径加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50751555/