外部Javascript文件不能在HTML中工作



这是非常基本的,但我不确定为什么它停止工作。我有以下html文件

<html>
<!doctype html>
<head>

<script> document.write("this is working")</script>
<p>this is working</p>
</head>
<body>
<script src="test.js"></script>
</body>
</html>

和以下与HTML文件

在同一文件夹中的javascript文件
document.write("Hello World!");

html文档中的脚本和html工作正常。但是,外部javascript文件不会被执行。我在js文件中尝试了各种脚本,并对html文件进行了轻微修改。在windows 10电脑上。

请注意,这不是一个重复的问题,其他类似的问题略有不同。

编辑:浏览器控制台错误状态"不允许加载本地源代码";这可能是chrome浏览器的安全问题。编辑:同样的情况下,所有的浏览器,所以似乎不纯粹与chrome有关。我尝试了所有我能找到的修复,但都不起作用。

编辑:我尝试使用node和python作为服务器。

看起来你正在通过文件协议加载HTML文件(即双击文件并在浏览器中打开它)。在这种情况下,由于安全原因,浏览器可能会拒绝加载任何外部资源(在您的情况下是test.js脚本)。通过HTTP协议加载HTML。它可以通过多种方式实现。

  • 如果有PHP安装后,只需在项目目录中运行php -S localhost:80,就会启动一个本地服务器,您可以通过访问http://localhost来浏览它。默认情况下,它将提供index.html页面。
  • 如果你有Node.js安装(npm也是如此),全局安装http-server(npm i http-server -g)。之后,在项目目录下运行http-server。默认情况下,它将在端口8080上启动本地服务器,因此您将能够访问http://localhost:8080,index.html将被服务。

我尝试了后一个,你上面的代码工作得很好。

这不是一个解决方案,但它是一个工作,如果有人有同样的问题,一个更好的答案没有产生。

获取chrome扩展"web服务器"并打开它,而不是通过node, python等运行。

最新更新