jQuery - The noConflict() Method
jQuery를 사용하면서 페이지에서 다른 프레임워크를 사용하려면 어떻게 해야 합니까?
이미 알고 있듯이, jQuery는 $
기호를 jQuery의 바로가기(shortcut)로 사용합니다.
Angular, Backbone, Ember, Knockout 등과 같은 다른 많은 인기있는 JavaScript 프레임워크가 있습니다.
두 개의 다른 프레임워크가 동일한 바로가기를 사용하는 경우, 그중 하나가 작동을 멈출 수 있습니다.
jQuery 팀은 이미 이에 대해 생각하고 noConflict()
메서드를 구현했습니다.
noConflict()
메서드는 $ 바로가기 식별자에 대한 보류를 해제하므로, 다른 스크립트에서 사용할 수 있습니다.
물론 바로가기 대신 전체 이름을 작성하여 jQuery를 계속 사용할 수 있습니다.
$.noConflict(); jQuery(document).ready(function () { jQuery("button").click(function () { jQuery("p").text("jQuery is still working!"); }); });
자신만의 바로가기를 매우 쉽게 만들 수도 있습니다.
noConflict()
메서드는 나중에 사용하기 위해 변수에 저장할 수 있는 jQuery에 대한 참조를 반환합니다.
다음은 그 예제입니다.
var jq = $.noConflict(); jq(document).ready(function () { jq("button").click(function () { jq("p").text("jQuery is still working!"); }); });
$
바로가기를 사용하는 jQuery 코드 블록이 있고 모두 변경하지 않으려면,
$
기호를 준비 메서드에 매개 변수로 전달할 수 있습니다.
이렇게 하면 함수 내부에서는 $
를 사용하여 jQuery에 액세스 할 수 있고,
이 함수 외부에서는 "jQuery"를 사용해야 합니다.
$.noConflict(); jQuery(document).ready(function ($) { $("button").click(function () { $("p").text("jQuery is still working!") }); });
모든 jQuery 기타 메소드에 대한 전체 개요는 jQuery Misc Reference로 이동하세요.