让Google帮你托管AJAX库

标签:Google, JavaScript

最近老在钻研JavaScript库,发现其确实很强大。但不少库都很大,很影响页面加载速度。
不过Google很早就推出了一些库的托管服务,浏览者可以从Google的服务器上加载这些库,节省服务器的带宽。而且如果浏览者曾访问过同样加载了这些库的网站后,便会被缓存起来,无需再次访问。

以下是目前托管的库:
jQuery
jQuery UI
Prototype
script_aculo_us
MooTools
Dojo
SWFObject
Yahoo! User Interface Library (YUI)
Ext Core
Chrome Frame
如果不喜欢看英文的话,可以看简略的中文介绍

简单来说,想加载jQuery 1.2.6版本可以用下面2种方式:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"></script>
或者
<script src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.2.6");
</script>
Google推荐的是后者,我粗略看了下http://www.google.com/jsapi,这个JavaScript代码使用了CDN(内容分发网络)来向客户端发送数据,并且是lazy loading,理论上是比前者快。不过貌似第一种使用的人多,所以客户端很可能已经缓存过,也无需下载,只是响应速度的差别。
此外,有的还有uncompressed:true参数,可以参考文档。
如果你需要SSL链接,可以把http改成https,避免出现混合内容警告。

最后特别注意,如果要使用这个库的代码,必须在库载入完毕后。
最简单的方式是用</script>关闭google.load,要执行的代码则放在下1段script里。
此外还可以设置google.setOnLoadCallback(要运行的函数);,这样在所有load结束后,就会自动调用要运行的函数了。
详细介绍可以看Google AJAX APIs文档

1条评论 你不来一发么↓ 顺序排列 倒序排列

    向下滚动可载入更多评论,或者点这里禁止自动加载

    想说点什么呢?