jQuery 및 기타 JavaScript 프레임워크
이미 알고 있듯이 jQuery는 $ 기호를 jQuery의 약칭으로 사용합니다.
다른 JavaScript 프레임워크에서도 $ 기호를 약칭으로 사용하면 어떻게 되나요?
다른 JavaScript 프레임워크로는 MooTools, Backbone, Sammy, Cappuccino, Knockout, JavaScript MVC, Google Web Toolkit, Google Closure, Ember, Batman 및 Ext JS가 있습니다.
이러한 프레임워크 중 일부는 $ 기호를 단축 기호(예: jQuery)로 사용하며 동일한 단축 기호를 사용하는 두 개의 서로 다른 프레임워크를 사용하는 경우 스크립트 실행이 중지될 수 있습니다.
jQuery 팀은 이 문제를 고려하여 noContribute() 메서드를 구현했습니다.
jQuery noContribute() 메서드
noConstrict() 메서드는 $ 식별자에 대한 제어를 해제하여 다른 스크립트에서 사용할 수 있도록 합니다.
예
물론 약어를 전체 이름으로 바꾸어 jQuery를 사용할 수 있습니다.
$.noConflect();
jQuery(document).ready(function(){
jQuery("button").click(function(){
jQuery("p").text("jQuery가 아직 실행 중입니다!");
});
});
예
자신의 약어 . noConflect()는 나중에 사용하기 위해 변수에 저장할 수 있는 jQuery에 대한 참조를 반환합니다. 이 예를 살펴보십시오.
var jq = $.noConflect( );
jq(document).ready(function(){
jq("button").click(function(){
jq("p").text("jQuery is still running! ");
});
});
예
jQuery 코드 블록에서 $ 단축키를 사용하고 이 단축키를 변경하지 않으려는 경우 , $ 기호를 Ready 메소드에 변수로 전달할 수 있습니다. 이 방법으로 함수 내부에서 $ 기호를 사용할 수 있지만 함수 외부에서는 여전히 "jQuery"를 사용해야 합니다.
$.noContribute();
jQuery(document).ready(function($){
$("button").click( function(){
$("p").text("jQuery가 아직 실행 중입니다!");
});
});