Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery CDN未加载到本地主机上_Javascript_Jquery_Cdn - Fatal编程技术网

Javascript jQuery CDN未加载到本地主机上

Javascript jQuery CDN未加载到本地主机上,javascript,jquery,cdn,Javascript,Jquery,Cdn,我从以下位置加载了jquery cdn: <head> . . <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> </head> 我假设这是说jQuery函数“$…”未定义,因为CDN的GET中存在错误,为什么会在本地发生这种情况?您实际上没有在本地主机上运行(http://localhost)但在本地文件系统上(file:///p

我从以下位置加载了jquery cdn:

<head>
.
.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>

我假设这是说jQuery函数“$…”未定义,因为CDN的GET中存在错误,为什么会在本地发生这种情况?

您实际上没有在本地主机上运行(
http://localhost
)但在本地文件系统上(
file:///path/to/whatever.html
)。使用
/
链接将协议复制到
file://ajax.googleapis.com
这当然不存在


您应该在计算机上设置一个服务器,以便使用http协议访问实际的本地主机。它还有其他好处,因为当直接从文件系统加载页面时,浏览器在其他方面的行为也有点不同。

您是否尝试过删除“src”属性开头的“/”而改用“http://”?由于这些斜杠,它可能在URL的开头添加了“localhost”。

我在中回答了一个类似的问题,正如Juhana所说,问题是加载jQuery时缺少协议

当您使用http或https时,无协议CDN可以工作,因为浏览器会将前缀添加到jQuery URL中


但是当使用本地html文件时,缺少的协议将是
file:
,浏览器将无法在
file://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
无法加载它。在这种情况下,您必须手动添加协议,如果您最终在线使用该页面,这将是一个小问题,因为无协议URL更好,更便于缓存()。

尝试通过调试查看正在发生的情况。例如,如果您使用的是Chrome浏览器,请打开inspector,转到“网络”选项卡,然后刷新页面。您将能够看到您的请求是否失败,等等。@NickMitchinson它显示status:(failed)&Type:pending确实,如果CDN调用失败,您应该尝试回退到您自己的Web服务器上的文件。这也适用于
文件://
,因为您只需回退它就可以解决问题,但随后您将失去使用
//
url的好处(根据当前url的使用情况自动使用http或https)。
<body>
.
.<script src="app.js"></script>
</body>
GET file://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
Uncaught ReferenceError: $ is not defined