Javascript 什么';加载jQuery的最佳方式是什么?

Javascript 什么';加载jQuery的最佳方式是什么?,javascript,jquery,asp.net,asp.net-mvc,google-cdn,Javascript,Jquery,Asp.net,Asp.net Mvc,Google Cdn,可能重复: 我有一个使用jQuery的应用程序。该应用程序几乎可以使用jQuery的任何最新版本,如1.7或1.8 有谁能给我一个建议,告诉我如何编写我的应用程序,以最大限度地提高它在用户缓存中找到满足我需要的jQuery最新版本的机会。例如,我是否应该尝试从google CDN中查找一个版本,在这种情况下,我应该尝试查找哪个版本?对于最新版本,您可以直接从jQuery加载: <script src="http://code.jquery.com/jquery-latest.min.js

可能重复:

我有一个使用jQuery的应用程序。该应用程序几乎可以使用jQuery的任何最新版本,如1.7或1.8


有谁能给我一个建议,告诉我如何编写我的应用程序,以最大限度地提高它在用户缓存中找到满足我需要的jQuery最新版本的机会。例如,我是否应该尝试从google CDN中查找一个版本,在这种情况下,我应该尝试查找哪个版本?

对于最新版本,您可以直接从jQuery加载:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>

您还可以从中加载其他文件

一些流行的CDN包括:

  • jQuery(code.jQuery.com)
  • 微软(ajax.Microsoft.com)
  • 谷歌(ajax.googleapis.com)

选择满足您需求的最新版本的jQuery。目前,这将是1.8。然后在一个免费且广泛使用的CDN上链接到它(可能是谷歌或微软)

您应该链接到jQuery的特定版本。虽然jQuery的最新版本有一个链接,但您不应该链接到该链接,因为当该链接发生变化时,您的站点可能会在您不知情的情况下崩溃。您应该只链接到jQuery的特定版本。下面是在谷歌CDN上链接到1.8.1的代码

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


如果你真的想优化你的浏览器缓存命中率,你可以选择一个现在广泛部署的jQuery版本进行测试(我相信有关于每个版本的使用量的web统计数据),然后定期更新以跟踪最常用的版本。我怀疑这是一种微观优化,只需选择您测试过的任何最新版本就可以了,这将给您带来使用通用CDN的好处。

我建议您从或CDN中引用静态版本号。立即使用最新版本进行开发。如果您所做的更改需要更新的功能,只需更改布局中的引用即可

Google CDN看起来像:

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

公共网站使用内容交付网络(CDN)非常普遍。要引用其中一个文件,请将它们与任何其他本地文件一样包含在脚本标记中:

jQuery示例

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
CDN可用性和性能评估 关于可用CDN的质量和性能,我在royal.pingdom.com上看到了这个非常有趣的问题

来自Pingdom的报告揭示了jQuery最常用、最自由的主机;谷歌、微软和Media Temple;已证明可靠,但性能不一致

为了评估网络,Pingdom在欧洲和北美的多个地点进行了30天的测试,每分钟测试一次

结果发现,这三种方法都提供了极好的可用性,但性能却不是这样

对于不使用HTTPS或安全服务器的网站,Media Temple在欧洲是目前最快的,其次是谷歌,但在北美则落后。对于HTTPS网站,谷歌是欧洲速度最快的,而谷歌和微软在北美的表现类似


微软在欧洲表现最差,但在北美总体上与谷歌持平。

我想使用CDN,但哪一个是最好的选择,我应该如何编码它以查找最有可能在缓存中的jQuery?在您决定谷歌、jQuery、,或者微软,这真的不重要。所有这些都具有相似的可靠性和性能。链接到
jquery latest.min.js
是危险的,因为jquery可能会在未来的版本中进行更改,这可能会破坏您的网站(这种情况随时都会发生),而您的网站将自动继承并被破坏。+1真棒的解释!谷歌版本缺少
type=“text/javascript”
,这是打字错误还是故意的?不应标记为重复。“副本”很拥挤,包含过时的信息。这是最新的
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.8.0.min.js" type="text/javascript"></script>
// Check if jQuery was initialized and if not (CDN was down for example), then
// load jQuery from a local source.
if(typeof jQuery === 'undefined'){
    document.write(unescape("%3Cscript src='yourlocalpath/jquery.1.x.min.js' type='text/javascript'%3E%3C/script%3E"));
}