2011-01-30 60 views
0

可能重複:
Can I use multiple versions of jQuery on the same page?使用兩種版本的jQuery在一個頁面

嗨,

頁面使用jQuery 1.4.4版本,但我的劇本的要求之一較舊的版本。 我插入舊的jQuery版本,並設置新的名字:

jq132("#docs_file ul").sortable({ opacity: 0.6, cursor: 'move', update: function() 

物權法秀(火狐debuger):jq132( 「#docs_file UL」)排序

<script type="text/javascript">var jq132 = $.noConflict(true);</script> 

然後我在這一行出現錯誤是不是一個函數

jq132(document).ready(function() 
{ 
    jq132(function() 
    { 
     jq132("#docs_file ul").sortable({ opacity: 0.6, cursor: 'move', update: function() 
     { 
      var order = $(this).sortable("serialize") + '&action=Listings'; 
      jq132.post("order.php", order, function(theResponse){ 
       jq132("#error").html(theResponse); 
      });                
     }         
     }); 
    }); 

}); 
+6

的問題不應該是「如何使用同一頁上的兩個jQuery的版本」,而是「如何我修理$ ancient_broken_plugin與最新版本的jQuery工作」的, – ThiefMaster 2011-01-30 17:34:00

回答

0

你需要包括要利用每一個插件後調用noConflict

0

sortable是一個插件,這意味着它會嘗試通過分配給jQuery.fn對象將自身添加到jQuery中。因此,如果您想要使用舊版jQuery的插件,那麼在重新命名jQuery之前以及加載新版本之前,您必須先加載插件。例如:

<script src='jquery132.js'></script> 
<script src='some.plugin.js'></script> 
<script>var jq132 = jQuery.noConflict(true);</script> 
<script src='jquery144.js'></script> 
<script src='some.plugin.js'></script> 

請注意,第2行和第5行是相同的。第一個將該腳本添加到jQuery 132.第二個將它添加到jQuery 1.4.4。也許。如果腳本沒有自己的全局符號。如果它不假設jQuery將繼續引用jQuery(這是一個相當合理的假設)。

Live example

相關問題