2011-06-23

引用Google或微软的CDN加载jQuery

2+

在网页中我们经常使用jQuery库,选择使用的jQuery加载源,能有效加快网站的加载速度,目前最佳的选择就是使用Google或Microsoft提供的CDN jQuery源。

Google Ajax API CDN

http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js

Google Ajax CDN Documentation

Microsoft CDN

http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js

http://ajax.microsoft.com/ajax/jquery/jquery-1.4.4.min.js

Ajax CDN Announcement, Microsoft Ajax CDN Documentation

使用 Google jQuery 的CDN方法用起来也很简单,直接在网页里引用Google服务器上的相关js文件就可以了。不过,如果引用多个js,就要插入多段的script。 Google也提供了相应的办法,那就是google load。我们只需要在页面里引用一个js文件,就可以根据需要实时加载用到的js库了。

首先在页头部分加入以下这行代码:

<!--
document.write(unescape("%3Cscript src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
!window.jQuery && document.write(unescape("%3Cscript src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js' type='text/javascript'%3E%3C/script%3E"));
//-->

加载jQuery,可以这样使用:

<!--
document.write(unescape("%3Cscript src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
!window.jQuery && document.write(unescape("%3Cscript src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js' type='text/javascript'%3E%3C/script%3E"));
//-->

这样我们就从Google的最近的CDN镜像上加载了jQuery 1.4.4版的js库,接下来就可以正常写js代码了。不过,即使是Google的CDN镜像,下载也毕竟是需要时间的,万一代码库还没有下载完而浏览器已经解释到了下面的代码了怎么办?我们可以设定在js库加载完以后才开始执行js:

<!--
document.write(unescape("%3Cscript src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
!window.jQuery && document.write(unescape("%3Cscript src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js' type='text/javascript'%3E%3C/script%3E"));
//-->

更多有关google jsapi的相关介绍和文档,可以参考:google AJAX 库 API

当然我们还有其他的类库可以加载

在google 类库 http://code.google.com/intl/zh-CN/apis/libraries/devguide.html

有各种各样的CDN,比如EXT Core、jQuery UI 、Dojo等等。

虽然 CDN jQuery 源相当的稳定,不过我们也不能保证其能随时访问,万一大局域网一激动,我们不就蛋疼了,所以我们还要给它另外一个选择,让它根据条件加载 jQuery,加一个备用源,如下:

<!--
document.write(unescape("%3Cscript src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
!window.jQuery && document.write(unescape("%3Cscript src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js' type='text/javascript'%3E%3C/script%3E"));
//-->

也可以这样写:

<!--
document.write(unescape("%3Cscript src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js' type='text/javascript'%3E%3C/script%3E"));
!window.jQuery && document.write(unescape("%3Cscript src='http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.4.min.js' type='text/javascript'%3E%3C/script%3E"));
//-->

然后保存到 jQuery.js 放在本地加载,文件很小,加载也快,变更版本也很方便。

其中第二个地址可以换成你本地的 jQuery 以保证链接稳定性。这样的意义是:先去加载谷歌的jquery库文件,如果加载失败那么就加载微软的 jquery 库文件。如果加载 google jquery 成功则会忽略后面的微软 jQuery 代码。

本文有 2 篇评论 ↓↓

  1. 不错,支持下了哦

  2. 不错!我也试试从新浪加载。