BIG
jQuery를 사용할 때 다른 라이브러리와 충돌이 나는 경우가 있습니다.
충돌의 원인은 두가지로 구분할 수 있습니다.
다른 라이브러리와 충돌
다른 버전의 jQuery와 충돌
각 경우에 대해서 어떻게 충돌을 방지할 수 있는지 알아보겠습니다.
다른 라이브러리와 충돌
jQuery는 $를 jQuery의 alias로 사용합니다.
그런데 다른 라이브러리에서 $를 함수나 변수로 사용한다면 jQuery가 제대로 작동하지 않을 수 있습니다.
이를 방지하는 방법은 jQuery에서 $를 alias로 사용하지 않도록 하는 것입니다.
$.noConflict();
또는
jQuery.noConflict();
를 넣으면 $를 다른 라이브러리가 사용하고, jQuery 코드를 만들 때는 $ 대신 jQuery를 사용합니다.
만약 계속해서 $를 사용하고 싶다면 다음과 같이 합니다.
$.noConflict(); jQuery( document ).ready(function( $ ) { // AAA }); // BBB AAA에서는 jQuery가 $를 사용하고, BBB에서는 다른 라이브러리가 $를 사용합니다. |
jQuery의 alias를 다른 것으로 만드는 방법도 있습니다.
var jb = jQuery.noConflict(); 위와 같이 하면 $ 대신 jb를 jQuery의 alias로 사용합니다. jb( 'p' ).addClass( 'abc' ); |
다른 버전의 jQuery와 충돌
흔한 경우는 아니지만 여러 버전의 jQuery를 사용하는 경우가 있습니다. 이런 경우 충돌을 방지하는 방법은 버전별로 alias를 따로 만들어 주는 것입니다. <script src='jquery-1.11.1.js'></script> <script> var jb = jQuery.noConflict(); </script> <script src='jquery-2.1.1.js'></script> <script> var hs = jQuery.noConflict(); </script> 1.11.1을 사용할 때는 jb를, 2.1.1을 사용할 때는 hs를 alias로 사용합니다. |
LIST
'!!...JS-HTML' 카테고리의 다른 글
[javascript] 콜백 함수의 활용 (0) | 2017.02.23 |
---|---|
HTML + JAVASCRIPT - 동영상 배경 페이지 구축 샘플 코드 (0) | 2017.01.05 |
HTML OGP ( URL 미리보기 설정 - 카카오톡, 페이스북, 네이버블러그 ) (0) | 2015.12.16 |
javascript 간단한 이미지 슬라이드 샘플 - jQuery - (0) | 2015.11.12 |
javascript jQueryui tabs 활용 예제 (0) | 2015.03.27 |