내 세상

[JavaScript] Uncaught TypeError: $(...) is not a function 본문

Technical/etc

[JavaScript] Uncaught TypeError: $(...) is not a function

sga8 2020. 9. 24. 08:33
728x90
반응형

실제 발생 에러는 아래와 같음.

 

발생 원인은 크게 3가지로 나뉜다. 그리고 각 해결책은 아래와 같다.

    1. <head> 태그 내 jquery script 선언이 가장 위에 위치하지 않은 경우.

        - jquery script 선언부를 <head> 태그 내 상단에 위치하도록 할 것. (전체 코드의 상단이 아님.)

        - 아래 예시 사진.

    2. jquery 중복 설치/선언 .

        - 전체 메인 소스코드에 jquery가 선언되어 있고, 해당 코드 하위에 있는 js에서 다시 jquery를 선언할 때.

        - jQuery를 $로 사용하는 것은 국룰이지만, 선언에 따라서 달리 사용할 수 있는게 포인트.

        - jQuery.noConflict() 를 사용하여 해결함. 검색해보면 알 수 있음.

        - 예시

           - 하위 코드에서 아래와 같이 jquery script 선언 후 jQuery alias로 사용한다 !

           -

         - 위와 같이 jquery alias를 선언 후 기존에 $으로 사용하던 부분을 $js로 사용하여 충돌을 막을 수 있다!

    3. jquery 미설치.

        - jquery 설치하세요. 검색해보세요

 

728x90
반응형