Javascript github页面可以';找不到变量:$

Javascript github页面可以';找不到变量:$,javascript,jquery,d3.js,Javascript,Jquery,D3.js,我刚刚使用github页面创建了一个SPA。 这非常清楚,因为它包含一个.html和两个.js文件 我主要使用d3.js 我在本地主机上启动没有问题,但在github页面上部署时遇到了问题 我有两个错误: 找不到变量:$ 及 未能加载资源:服务器以404状态响应 (HTTP/2.0 404) 尽管在my index.html中包含jquery <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min

我刚刚使用github页面创建了一个SPA。 这非常清楚,因为它包含一个
.html
和两个
.js
文件 我主要使用
d3.js

我在本地主机上启动没有问题,但在github页面上部署时遇到了问题

我有两个错误:

找不到变量:$

未能加载资源:服务器以404状态响应 (HTTP/2.0 404)

尽管在my index.html中包含
jquery

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>


有什么问题吗?

如果在共享的链接上打开开发工具控制台,错误如下:

Mixed Content: The page at 'https://zkid18.github.io/data_visualization_project/' was loaded over HTTPS, but requested an insecure script 'http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'. 

This request has been blocked; the content must be served over HTTPS.
因此,在本例中,解决方案是通过HTTPS加载外部资源,因为GitHub就是在HTTPS上托管的。例如:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

如果页面通过HTTPS加载,那么它使用的每个资源也应该通过HTTPS加载。

这背后的原因是,否则中间人可能会用做不同事情的资源(或利用浏览器中的缓冲区溢出问题来执行代码的资源)和脚本(例如向第三方泄漏数据)来替换这些资源和脚本

你可以阅读更多关于这方面的内容


希望有帮助:)

您的页面是通过
https
加载的,但您正试图通过
http
加载jquery。这将失败。两者都使用https
https
。为什么投反对票?这是一个合法的问题,他发布了一段代码片段,并解释了预期和实际情况outcomes@Lissy可能是因为只要打开浏览器,开发工具就会立即显示问题所在。这应该是在提出问题之前的第一步。他必须打开开发工具,才能发布上述两条错误消息。他只是错误地解释了它们,每个人都开始了somewhere@Turnip你说得对,我只是没有注意到控制台的信息。这是一个愚蠢的问题