我使用以下代码通过 Google 的 CDN 加载 jQuery。
我的主要问题是,如果用户访问我的网站并且尚未预缓存 jQuery,将会发生什么情况。他会下载 Google 版本和我自己的版本吗?这里的并发是如何工作的?
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
if(typeof jQuery == 'undefined') {
//<![CDATA[
document.write("<script src='/includes/jquery-1.4.2.min.js' type='text/javascript'><\/script>");
//]]>
}
</script>
Thanks.
在您的示例代码中,他们将下载谷歌版本if由于另一个网站,他们还没有它。然后if由于某种原因谷歌关闭了,他们会下载你的版本,他们不会同时下载两个版本。仅要求第二个if第一个(来自谷歌)失败了。
支票是这样的:
- Do we have the google version cached?
-
Yes- 好的,开始吧,使用它。
-
No- 从谷歌下载,使用它。
- Is
jQuery
(the JavaScript object) defined?
-
Yes- 好吧,加载得很好,
if()
是假的,继续。
-
No - oh snap! Google load failed, either from cache or the fetch, need to load it from elsewhere
- 通过新的方式从您的网站加载它
<script>
刚刚添加的标签。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)