首頁 > web前端 > js教程 > 使用jquery.noConflict()解決jquery庫與其他庫衝突的問題

使用jquery.noConflict()解決jquery庫與其他庫衝突的問題

巴扎黑
發布: 2017-06-20 15:16:58
原創
1843 人瀏覽過

在使用jQuery開發的時候,可能還會使用到其他的JS函式庫,例如Prototype,但多庫共存時可能會發生衝突;若是發生衝突後,可以透過以下幾種方案進行解決:
一、 jQuery函式庫在其他函式庫之前導入,直接使用jQuery(callback)方法如:







#

test---prototype


test---jQuery

#< ;script type="text/javascript">
jQuery(function(){ //直接使用jQuery ,沒有必要呼叫"jQuery.noConflict()"函數
jQuery(" p").click(function(){
       alert( jQuery(this).text() );
});
});

$("pp"). style.display = 'none'; //使用prototype


二、 jQuery函式庫在其他函式庫之後導入,使用jQuery.noConflict()方法將變數$的控制權讓渡給其他函式庫,有以下幾種方式:

<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
jQuery(function(){ //使用jQuery
       jQuery("p").click(function(){
              alert( jQuery(this).text() );
       });
});
$("pp").style.display = &#39;none&#39;; //使用prototype
</script>
//代码二
<script type="text/javascript">
var $j = jQuery.noConflict(); //自定义一个比较短快捷方式
$j(function(){ //使用jQuery
       $j("p").click(function(){
       alert( $j(this).text() );
       });
});
$("pp").style.display = &#39;none&#39;; //使用prototype
</script>
//代码三
<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
jQuery(function($){ //使用jQuery
       $("p").click(function(){ //继续使用 $ 方法
       alert( $(this).text() );
       });
});
$("pp").style.display = &#39;none&#39;; //使用prototype
</script>
//代码四
<script type="text/javascript">
jQuery.noConflict(); //将变量$的控制权让渡给prototype.js
(function($){ //定义匿名函数并设置形参为$
       $(function(){ //匿名函数内部的$均为jQuery
              $("p").click(function(){ //继续使用 $ 方法
                     alert($(this).text());
              });
       });
})(jQuery); //执行匿名函数且传递实参jQuery
$("pp").style.display = &#39;none&#39;; //使用prototype
/*********************************************************************/
jQuery(document).ready(function(){ //一加载页面的时候就将权利让出去 
       jQuery.noConflict(); 
});
</script>
登入後複製

以上是使用jquery.noConflict()解決jquery庫與其他庫衝突的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板