我应该在生产代码中使用Google的JSAPI吗?

时间:2009-07-09 22:23:43

标签: jquery html jsapi

可能重复:

should-i-link-to-google-apis-cloud-for-js-libraries

还有许多其他讨论,包括:

Where do you include the jQuery library from? Google JSAPI? CDN? Best way to use Google's hosted jQuery, but fall back to my hosted library on Google fail


我正在查看Tiny MCE插件示例,并在文档的head中看到了此代码:

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
    google.load("jquery", "1.3");
</script>

我从来没有见过加载jQuery的方法。

  • 这是推荐用于生产吗?
  • 这种方法有什么好处?

8 个答案:

答案 0 :(得分:23)

是的,当然。 Google encourages it。每个人都受益。它更有可能在他们的缓存中,并且它只需要服务的文件少一个。

答案 1 :(得分:17)

正如其他人已经指出回答类似的问题,有一个缺点。在一些国家(如伊朗),这些显然被封锁,打破了网站。

答案 2 :(得分:15)

好处是它托管在googles超低延迟和快速服务器上。 你也可以使用

<script type=”text/javascript” src=”https://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js”></script>

它的效果相同。

答案 3 :(得分:12)

请记住,只有在加载文档后,google jsapi才会加载脚本。

因此,如果(例如)您在网络应用中使用jquery的$(document).ready(),则必须切换到google.setOnLoadCallback()

答案 4 :(得分:5)

我相信Google JSAPI也是异步的,有助于避免最好描述的“收费站”。想象一下,在您的网络浏览器和互联网本身之间有一条4车道高速公路。这条高速公路可以优化图片,文字,但是,当谈到外部脚本时,高速公路会创建一个收费站,减缓交通流量。最糟糕的是图片文本,这些脚本背后的css必须等到它们通过“ - Andres Vidal < / p>

收费站很重要,必须始终避免。

答案 5 :(得分:3)

我认为这种方法对您有很大帮助,原因如下:

Google使用内容分发网络,这将使远离您所在位置的用户可以比从您的网站上那样快速下载您的jquery库。

此外,它还会减少对您服务器的请求,并会让首次用户从谷歌服务器下载jquery javascript,如果用户已经在其他类似网站上进行此类实施,则无需再次下载。

所以我认为这会帮助你app / site

答案 6 :(得分:1)

此文件在压缩后为24KB,此类文件的添加将增加HTTP请求并等待浏览器将执行的响应和执行以及解析时间...如果您说文件本身在任何地方都缓存,即使该文件缓存在浏览器中,不要忘记考虑从磁盘读取,执行和解析所需的时间......

所有这些只是为了获取jQuery文件或其他常见的JS,我认为直接引用所请求的资源更好

查看Google的最佳做法以获取更多信息。

答案 7 :(得分:1)

中国有5亿互联网用户,并不是唯一一个阻止谷歌api的国家,这使得任何使用http://www.google.com/jsapi的网站功能失调。 存在一个小的好处:由于异步加载技术,这些站点不会显示与使用直接引用的其他站点等待加载相同的挂起,例如: