github页面无法找到变量:$

时间:2017-12-05 13:00:01

标签: javascript jquery d3.js

我刚刚使用github页面创建了一个SPA。 很明显,包含一个.html和两个.js文件 我主要使用d3.js

我在本地主机上启动没有问题,但是当我在github页面上部署它时有问题

我有两个错误:

  

无法找到变量:$

  

无法加载资源:服务器响应状态为404   (HTTP / 2.0 404)

虽然我的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>

https://zkid18.github.io/data_visualization_project/ https://github.com/zkid18/data_visualization_project 怎么了?

1 个答案:

答案 0 :(得分:2)

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

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托管的内容。例如:

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

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

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

您可以阅读有关此in this article on the Mozilla site的更多信息。

希望有所帮助:)