項目中同一個頁面引入不同的jQuery版本的不沖突問題


  在寫項目的過程中,如果需要使用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);
});

這時,兩個版本就可以共存了;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM