프로그래밍 언어/jQuery, ajax

동일한 페이지에서 여러 버전의 jQuery를 사용할 수 있을까?

Rateye 2021. 7. 2. 10:32
728x90
반응형
질문 : 동일한 페이지에서 여러 버전의 jQuery를 사용할 수 있습니까?

내가 작업중인 프로젝트에서는 고객의 웹 페이지에서 jQuery를 사용해야합니다. <script> 생성 된 <iframe> 위젯을 빌드하는 <script> 요소를 포함하여 제공 할 코드 덩어리를 삽입합니다. 아직 최신 버전의 jQuery를 사용하고 있지 않다면 Google에서 호스팅하는 jQuery 버전에 대한 <script>

문제는 일부 고객이 이미 이전 버전의 jQuery를 설치했을 수 있다는 것입니다. 이것이 적어도 상당히 최신 버전이면 작동 할 수 있지만, 우리 코드는 최근에 jQuery 라이브러리에 도입 된 일부 기능에 의존하므로 고객의 jQuery 버전이 너무 오래된 경우가있을 수 있습니다. 최신 버전의 jQuery로 업그레이드하도록 요구할 수 없습니다.

고객 페이지의 코드를 방해하거나 영향을주지 않는 코드 컨텍스트 내에서만 사용하도록 최신 버전의 jQuery를로드하는 방법이 있습니까? 이상적으로는 jQuery의 존재 여부를 확인하고 버전을 감지 한 다음 너무 오래된 경우 코드에 사용하기 위해 최신 버전을로드 할 수 있습니다.

<script> 포함하는 고객 도메인 <iframe> 에 jQuery를로드하는 아이디어가 있었는데, 이는 실현 가능할 것 같지만 더 우아한 방법이 있기를 바랍니다. <iframe> 의 성능 및 복잡성 패널티).

답변

예, jQuery의 noconflict 모드로 인해 가능합니다. http://blog.nemikor.com/2009/10/03/using-multiple-versions-of-jquery/

<!-- load jQuery 1.1.3 -->
<script type="text/javascript" src="http://example.com/jquery-1.1.3.js"></script>
<script type="text/javascript">
var jQuery_1_1_3 = $.noConflict(true);
</script>

<!-- load jQuery 1.3.2 -->
<script type="text/javascript" src="http://example.com/jquery-1.3.2.js"></script>
<script type="text/javascript">
var jQuery_1_3_2 = $.noConflict(true);
</script>

그런 다음 $('#selector').function(); , 당신은 jQuery_1_3_2('#selector').function(); 또는 jQuery_1_1_3('#selector').function(); .

출처 : https://stackoverflow.com/questions/1566595/can-i-use-multiple-versions-of-jquery-on-the-same-page
728x90
반응형