解決jquery和其他庫的衝突
在jQuery庫中,幾乎所有的外掛都被限制在他的名稱空間裡。通常,全域性(global)物件都被很好地儲存在jQuery名稱空間裡,因此當把jQuery和其他JavaScript庫一起使用時,不會引起衝突。
jQuery庫在其他庫之後匯入
方法1
<!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="../../scripts/jquery-1.4.3.min.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p> <script type="text/javascript"> jQuery.noConflict(); //將變數$的控制權讓渡給prototype.js jQuery(function(){ //使用jQuery jQuery("p").click(function(){ alert( jQuery(this).text() ); }); }); $("pp").style.display = 'none'; //使用prototype </script> </body> </html>
方法2
<!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="../../scripts/jquery-1.4.3.min.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>
方法3
<!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="../../scripts/jquery-1.4.3.min.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p> <script type="text/javascript"> jQuery.noConflict(); //將變數$的控制權讓渡給prototype.js jQuery(function($){ //使用jQuery $("p").click(function(){ //繼續使用 $ 方法 alert( $(this).text() ); }); }); $("pp").style.display = 'none'; //使用prototype </script> </body> </html>
方法4(外掛一般以這種形式寫)
<!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="../../scripts/jquery-1.4.3.min.js" type="text/javascript"></script> </head> <body> <p id="pp">test---prototype</p> <p >test---jQuery</p> <script type="text/javascript"> jQuery.noConflict(); //將變數$的控制權讓渡給prototype.js (function($){ //定義匿名函式並設定形參為$ $(function(){ //匿名函式內部的$均為jQuery $("p").click(function(){ //繼續使用 $ 方法 alert($(this).text()); }); }); })(jQuery); //執行匿名函式且傳遞實參jQuery $("pp").style.display = 'none'; //使用prototype </script> </body> </html>
jQuery庫在其他庫之前匯入
方法5
<!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> <!--先匯入jQuery --> <script src="../../scripts/jquery-1.4.3.min.js" type="text/javascript"></script> <!--後匯入其他庫 --> <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 ,沒有必要呼叫"jQuery.noConflict()"函式。 jQuery("p").click(function(){ alert( jQuery(this).text() ); }); }); $("pp").style.display = 'none'; //使用prototype </script> </body> </html>
相關文章
- jQuery.noConflict() 方法—— jquery庫與其他庫衝突的問題解決jQuery
- 解決動態庫的符號衝突符號
- git 解決衝突Git
- Git 解決衝突Git
- 程式衝突及其解決
- git pull 衝突解決Git
- hash衝突解決方法
- Git衝突解決技巧Git
- Flutter和iOS手勢衝突解決思路FlutteriOS
- git pull衝突的解決方案Git
- JAR衝突問題的解決JAR
- SVN解決衝突 記錄
- css命名衝突解決方法CSS
- 依賴衝突時的解決方法
- H5-Jquery和Vue同時使用衝突H5jQueryVue
- Git 衝突了怎麼辦,如何高效快速的解決程式碼衝突?Git
- cad快捷鍵和win10衝突怎麼辦_cad快捷鍵和win10衝突的解決方法Win10
- git 解決版本衝突問題Git
- PCL(9)PLC庫和OpenCV庫中的FLANN衝突OpenCV
- 解決預設方法衝突的規則
- hash解決衝突的方法優缺點
- git如何進行程式碼的合併和衝突的解決Git行程
- QianKun 解決element ui 和 element-plus 樣式衝突UI
- Android 解決BottomSheetDialog 拖曳衝突問題Android
- Android com.android.support衝突解決Android
- Git 解決本地遠端版本衝突Git
- Jar包衝突解決方案調研JAR
- GO 問題之多版本衝突解決Go
- maven依賴衝突以及解決方法Maven
- Elasticsearch——併發衝突以及解決方案Elasticsearch
- Maven依賴衝突解決總結Maven
- com.android.support衝突的解決辦法Android
- 解衝突用到的命令
- Docker預設網段和主機網段衝突解決Docker
- Python:說說字典和雜湊表,雜湊衝突的解決原理Python
- Maven Idea檢視解決jar包衝突MavenIdeaJAR
- git 解決衝突 —— git stash 當前修改Git
- 一招解決所有依賴衝突
- Git Worktree:解決分支依賴衝突的問題Git