在写项目的过程中,如果需要使用jQuery时,时长会遇到需要引入不同版本的jQuery,可能上一个负责该项目的人用到的是老版本的jQuery,而你去添加功能时用的是新版本的,这个问题很难避免掉,如果去改代码,可能会浪费很长的时间,下面说一下我的解决方法。
1、在html页面,引入两个不同版本的 jQuery(低版本在前,高版本在后)
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.10.0/jquery.min.js"></script> <script type="text/javascript" src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
2、输出jQuery 版本号
<script type="text/javascript"> $(function(){ var version = $.fn.jquery ; console.info(version); document.write("jQuery版本是: " + version); }); </script>
此时的版本号是2.0.0;
3、对调jQuery版本引入顺序 (高版本在前,低版本在后)
<script type="text/javascript" src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <script type="text/javascript" src="http://libs.baidu.com/jquery/1.10.0/jquery.min.js"></script>
使用 2中方法,再次输出jQuery版本号: jQuery版本是: 1.10.0;
4、结论: 通过调整 jQuery的引入顺序,无法解决不同版本jQuery共存的问题。 最终获得的jQuery对象是最后加载的那一个。
5、解决问题
使用 noConflict() 方法实现jq版本共存;
$(function(){ var $2 = $.noConflict(); // 第二个加载的jQuery对象变成了 $2 var version = $.fn.jquery ; var version2 = $2.fn.jquery ; console.info(version , version2); document.write("jQuery版本是: " + version + "jQuery2版本是: " + version2); });
这时,两个版本就可以共存了;