>  기사  >  웹 프론트엔드  >  Jquery와 Prototype_prototype의 혼합 사용 비교

Jquery와 Prototype_prototype의 혼합 사용 비교

WBOY
WBOY원래의
2016-05-16 19:00:581195검색

그러나 여기서 문제가 발생합니다. jQuery와 프로토타입 모두 달러 기호 함수 "$"를 선택자로 사용하므로 둘이 혼합되면 $ 함수가 재정의되어 프레임워크 중 하나를 사용할 수 없게 됩니다.

그러나 곧 많은 사람들이 해결책을 내놓았습니다. 예를 들어 더 인기 있는 해결책은

코드 복사 코드는 다음과 같습니다.
; script type="text/javascript">
JQ = $; //$ 함수 이름 바꾸기



이런 식으로 JQ를 사용하여 jQuery의 $function 이름을 대체할 수 있으며, 프로토타입의 $function을 다음과 같이 평소대로 사용할 수 있습니다.



코드 복사








코드 복사

코드는 다음과 같습니다.
< ;/ div>



;< ;/div>




테스트 후 jQuery와 Prototpye는 정상적으로 작동합니다. 과거와 유일한 차이점은 이전에 작성한 Jquery에 추가 코트를 추가해야 한다는 것입니다.




코드 복사

코드는 다음과 같습니다.

(function($){
//여기에 Jquery 코드 작성
})(jQuery)
(function($){
//여기에 Jquery 코드 작성}) (jQuery);

이 재킷은 함수 로컬 변수의 유효 범위를 교묘하게 사용하여 Jquery 코드를 원래 방식으로 안전하게 작성할 수 있도록 합니다. 이 솔루션은 기존 Jquery 코드를 Jquery로 업그레이드하는 데 더 적합합니다. 프로토타입.

단점:

여전히 Jquery 플러그인의 문제를 해결할 수 없습니다. 이 문제는 플러그인 스크립트에서 $ 호출을 수동으로만 수정할 수 있습니다. 근본적인 해결책은 유용성을 보장하기 위해 지금 당장 대안적인 방식으로 미래의 플러그인을 작성하는 것입니다. Jquery UI가 지금 이 작업을 수행하는 것 같습니다. Demo의 소스 코드에서 보았습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.