载入jQuery库的最佳方法
近期Google服务在境内的频繁被“抽风”导致我对其所有服务都产生了隐忧。
在网站开发的项目中使用Google CDN的jQuery库虽然加载速度很快,但调用本地服务器的库才可以确保万无一失。而使用Wordpress内置jQuery库的话,末尾防止JS库冲突而加入的jQuery.noConflict()使得主题中所有jQuery代码都要做一些小修改,更可能导致一些插件效果失效。Paul Irish在HTML5 Boilerplate中使用的方法我认为非常不错,分享给大家。
使用方法
使用下面的代码可以在Google CDN库获取失败时载入本地jQuery库:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">window.jQuery || document.write('<script type="text/javascript" src="/js/libs/jquery.min.js">\x3C/script>')</script>
在Wordpress主题中使用的方法为:
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<script type="text/javascript">window.jQuery || document.write('<script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/jquery.min.js">\x3C/script>')</script>
注意事项
- 因为开头提到的原因,所以建议下载一份jQuery官方的Mini库放到Wordpress当前使用的主题目录下调用,不要使用wp-includes里面的库。
- Google CDN库的地址采用了协议相对路径,具体可以看Paul Irish的介绍,当然你依旧可以使用带“http:”的路径。
- 把jQuery代码统统放到页面底部可以提高载入速度。
- 使用HTML5重构的页面可省略掉
type="text/javascript"
。
欢迎发表你的看法。