溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

jQuery命名沖突問題怎么解決

發(fā)布時間:2021-08-10 13:39:00 來源:億速云 閱讀:110 作者:chen 欄目:web開發(fā)

這篇文章主要介紹“jQuery命名沖突問題怎么解決”,在日常操作中,相信很多人在jQuery命名沖突問題怎么解決問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”jQuery命名沖突問題怎么解決”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

引言:

最近遇到個問題,同時引用了jquery庫和另外一個js庫。當(dāng)用$XX去調(diào)用js庫函數(shù)時,發(fā)現(xiàn)失效了!于是找資料,原來是jquery命名沖突了。因?yàn)樵S多JavaScript 庫使用$作為函數(shù)或變量名,jquery也一樣。其實(shí)$只是jquery的一個別名而已,假如我們需要使用jquery 之外的另一js庫,我們可以通過調(diào)用 $.noConflict() 向該庫返回控制權(quán)。下面是收集到解決這一問題的五種方案,總有一種你會用得上的。

例一:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>沖突解決1</title> <!-- 引入 prototype  --> <script src="prototype-1.6.0.3.js" type="text/javascript"></script> <!-- 引入 jQuery  --> <script src="http://www.cnblogs.com/scripts/jquery-1.3.1.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p>  <script type="text/javascript"> jQuery.noConflict();                //將變量$的控制權(quán)讓渡給prototype.js  jQuery(function(){                    //使用jQuery      jQuery("p").click(function(){          alert( jQuery(this).text() );      });  });   $("pp").style.display = 'none';        //使用prototype  </script>  </body> </html>

例二:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>沖突解決2</title> <!-- 引入 prototype  --> <script src="prototype-1.6.0.3.js" type="text/javascript"></script> <!-- 引入 jQuery  --> <script src="http://www.cnblogs.com/scripts/jquery-1.3.1.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p>  <script type="text/javascript"> var $j = jQuery.noConflict();        //自定義一個比較短快捷方式  $j(function(){                        //使用jQuery      $j("p").click(function(){          alert( $j(this).text() );      });  });   $("pp").style.display = 'none';        //使用prototype  </script> </body> </html>

例三:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>沖突解決3</title> <!-- 引入 prototype  --> <script src="prototype-1.6.0.3.js" type="text/javascript"></script> <!-- 引入 jQuery  --> <script src="http://www.cnblogs.com/scripts/jquery-1.3.1.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p>  <script type="text/javascript"> jQuery.noConflict();                //將變量$的控制權(quán)讓渡給prototype.js  jQuery(function($){                    //使用jQuery      $("p").click(function(){        //繼續(xù)使用 $ 方法          alert( $(this).text() );      });  });   $("pp").style.display = 'none';        //使用prototype  </script>  </body> </html>

例四:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>沖突解決4</title> <!-- 引入 prototype  --> <script src="prototype-1.6.0.3.js" type="text/javascript"></script> <!-- 引入 jQuery  --> <script src="http://www.cnblogs.com/scripts/jquery-1.3.1.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p>  <script type="text/javascript"> jQuery.noConflict();                //將變量$的控制權(quán)讓渡給prototype.js  (function($){                        //定義匿名函數(shù)并設(shè)置形參為$      $(function(){                    //匿名函數(shù)內(nèi)部的$均為jQuery          $("p").click(function(){    //繼續(xù)使用 $ 方法              alert($(this).text());          });      });  })(jQuery);                            //執(zhí)行匿名函數(shù)且傳遞實(shí)參jQuery   $("pp").style.display = 'none';        //使用prototype  </script>  </body> </html>

例五:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>沖突解決5</title> <!--先導(dǎo)入jQuery --> <script src="http://www.cnblogs.com/scripts/jquery-1.3.1.js" type="text/javascript"></script> <!--后導(dǎo)入其他庫 --> <script src="prototype-1.6.0.3.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p>  <script type="text/javascript"> jQuery(function(){   //直接使用 jQuery ,沒有必要調(diào)用"jQuery.noConflict()"函數(shù)。      jQuery("p").click(function(){                alert( jQuery(this).text() );      });  });   $("pp").style.display = 'none'; //使用prototype  </script> </body> </html>

到此,關(guān)于“jQuery命名沖突問題怎么解決”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI