2012-07-22 134 views
0

可能重复:
Can I use multiple versions of jQuery on the same page?如何解决Jquery的版本冲突

我有建于2008年的网站,我用很多jQuery插件,那些日子里,这是jQuery的1.3。

现在上周我试图升级到jquery 1.7,当我这样做时,我几乎没有问题。

如果我升级到新版本,我有一些插件不工作, 那么明显的解决方案是,以确保您使用最新的插件,.. 清楚这是不是那么简单,一些插件不有一个版本为 这个jQuery版本。

所以我现在要升级了jQuery,但不能因为插件的升级, ,我不能使用新的插件太多,因为它太老了..

所以我的问题是

有告诉jquery使用这个版本(在包括这两个版本之后) ,并且有没有办法告诉jquery或者html页面使用我指定的版本?

+1

是,通过结合['jQuery.noConflict(真);']命名空间较老版本的jQuery(http://api.jquery.com /jQuery.noConflict/)。 – 2012-07-22 12:50:51

+0

检查我的这个问题的答案.http://stackoverflow.com/questions/8961120/script-reference-causes-conflict/8961203#8961203 – xdazz 2012-07-22 12:53:27

回答

1
<script src="jquery-1.2.6.js" type="text/javascript"></script> 
<script src="plugin-that-needs-1.2.6.js" type="text/javascript"></script> 
<script src="jquery-1.4.2.js" type="text/javascript"></script> 
<script src="plugin-that-needs-1.4.2.js" type="text/javascript"></script> 

<script type="text/javascript"> 
     var newJQuery = jQuery.noConflict(true), 
      oldJQuery = jQuery; 

     (function ($) { 

      // code that needs 1.4.2 goes here 

}(newJQuery)); 

     (function ($) { 

      // code that needs 1.2.6 goes here 

}(oldJQuery)); 

     // code that needs oldJQuery and newJQuery can go here 
</script> 

同样的问题在这里问:http://forum.jquery.com/topic/how-to-remove-jquery-version-conflict

+0

如果你想在页面加载代码无论如何,你也可以'newJQuery(函数($){...});''和'oldJQuery(function($){...});' – 2012-07-22 12:57:22