我一直在使用以下代码在我的所有项目中加载JQuery。我从http://html5boilerplate.com/那里拿来的。关于这项技术here有广泛的讨论。
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="jquery-1.7.1.min.js"><\/script>');</script>这段代码运行得很好,一旦我把它放到互联网上,它看起来非常快,但是当我在本地打开我的.html文件时,每次刷新需要大约10秒。通常,我受够了,会按如下方式修改代码:
<!-- uncomment when going live
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="jquery-1.7.1.min.js"><\/script>');</script>-->
<!-- remove following line when going live -->
<script src="jquery-1.7.1.min.js"></script>我是不是漏掉了什么明显的东西?我觉得我不应该得到超慢的加载时间,但当注释掉这些行时,它确实会自动解决。
发布于 2012-01-04 05:18:01
我猜你不是通过web服务器来提供HTML的。
url上的//前缀指示它应该使用与当前资源相同的协议(通常是http或https)
由于您不是通过http而是通过文件提供服务,因此它会尝试在您的本地文件系统中查找它,最终会超时。
Chrome检查器上的网络选项卡显示它正在尝试为我加载以下内容:
file://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
file:///C:/Users/My用户名/文档/jquery-1.7.1.min.js
它会尝试加载这些时间,文件系统(或者浏览器)最终会超时。
正确的方式是通过web服务器提供服务,如果您使用的是Windows,则使用IIS;如果您使用的是Linux/Mac,则使用Apache (Apache也适用于Windows,但IIS有更好的UI工具)
发布于 2012-01-04 05:17:54
这一行:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
尝试在您的文件系统中查找jQuery,这意味着它需要一段时间才能失败。在Google Chrome中查看开发人员面板的网络选项卡时,它会尝试在file://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js.Then中查找文件,一旦找不到该文件,它就会使用下一行加载jQuery (并成功找到该文件):
<script>window.jQuery || document.write('<script src="jquery-1.7.1.min.js"><\/script>');
要解决此问题,请将https:添加到脚本标记的src中,如下所示:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
https://stackoverflow.com/questions/8718662
复制相似问题