这是非常基本的,但我不确定为什么它停止工作。我有以下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等运行。