jquery와 기타 js 패키지 충돌 해결

8182 단어 Jquery
jQuery 라이브러리에서는 거의 모든 플러그인이 이름 공간에 제한되어 있습니다.전역의 대상은 jQuery 이름 공간에 잘 저장되어 있기 때문에 jQuery를 다른javascript 라이브러리와 함께 사용할 때 충돌을 일으키지 않습니다.
(참고: 기본적으로 jQuery는 $를 자신의 줄임말로 사용합니다) jQuery 라이브러리와 다른 라이브러리가 충돌하면 jQuerynoConflict () 함수를 사용하여 변수 $의 제어권을 다른 javaScipt 라이브러리에 넘길 수 있습니다.아래의 작은 단편 코드를 보십시오

JsCOM을 가정합니다.js 라이브러리에



function $(objName) { 
if (document.getElementById) { 
return eval('document.getElementById("' + objName + '")') 
} 
else { 
return eval("document.all." + objName) 
} 






jQuery.noConflict(); //将变量$的控制权移交给JsCOM.js 
var $cr = jQuery("#cr"); //照样使用jQuery类库,只是用jQuery代替了原来的$而以。 
var JsCOM_cr = $("cr"); //使用JsCOM.js类库 










2.특히 $() 대신 jQuery () 를 주의할 때, jQuery는 대소문자를 구분합니다. 자바스크립트 자체가 대소문자를 구분하기 때문입니다.









var $j = jQuery.noConflict(); //自定一个快捷方式 
var $cr = $j("#cr"); //使用jQuery类库,得用自定义快捷方式----$j; 
var JsCOM_cr = $("cr"); //和上一段代码一样,使用的是JsCOM.js类库 







jQuery.noConflict(); //将变量$的控制权让给JsCOM.js 
jQuery(function($) 

$("p").click(function() //在函数内继续可以使用jquery类库的$()方法 

alert($(this).text()); 
}) 
}) 
var JsCOM_cr = $("cr"); // 在函数外面,照样可以使用JsCOM.js的$()方法 




jQuery.noConflict(); //将变量$的控件权移交给别的类库,使用jquery类库的$符号时,请使用jQuery("#id"); 
(function($) { //定义匿名函数并设置形参为$ 
$(function() { //匿名函数内部的$均为jQuery 
$("div").click(function() {//继续使用$()方法 
alert($(this).text()); 
}) 
}) 
}) 
(jQuery); //使用匿名函数且传递实参jQUery 
alert($("cr")); //使用的是jsCOM.js类库中的$()函数 













 
 
jQuery().ready(function() { //无需调用jQuery.noConflict()函数 
var $cr = jQuery("#cr"); 
$cr.click(function() { 
if ($cr.is(":checked")) { 
alert("感谢你的支持!你可以继续操作了.."); 
} 
}) 
}) 
alert($("cr")); //使用的是jsCOM.js类库中的$()函数 


텍스트 링크:http://www.jb51.net/article/24014.htm















왜 제3자 CDN 가속 후의 jquery 라이브러리 파일을 추천합니까
How JQuery Works

좋은 웹페이지 즐겨찾기