SCRIPT5009: 'JSON'이(가) 정의되지 않았습니다.
SCRIPT5009: 'JSON'이(가) 정의되지 않았습니다.
jquery-2.0.0.min.js, 줄 4 문자 2586
SCRIPT5009: 'jQuery'이(가) 정의되지 않았습니다.
jquery-migrate-1.1.1.js, 줄 6 문자 1
SCRIPT5007: 'jQuery' 속성 값이 null이거나 정의되지 않았습니다. Function 개체가 아닙니다.
homepage.js, 줄 14 문자 1
SEC7115: :visited와 :link 스타일은 색으로만 구별할 수 있습니다. 일부 스타일은 :visited에 적용되지 않았습니다. SCRIPT5009: '$'이(가) 정의되지 않았습니다.
homepage.js, 줄 208 문자 3
jQuery를 사용하여 코딩하다가 이러한 상황이 벌어지니까 참 난감했습니다.
첫번째 애러부터 차근 차근 해결해 나가봅시다!
1. 'JSON'이(가) 정의되지 않았습니다.
IE9 이하에서 JSON 함수를 인식하지 못해서 생기는 문제입니다.
아래 링크를 타고 가서, Download Zip을 선택합니다.
이 파일들 중 나머지는 필요 없고, json2.js 만 jQuery 호출 위에 넣어주시면 됩니다.
이와 함께 jQuery도 최신 버전을 항상 유지하도록 아래의 코드를 함께 삽입해 주세요.
<script type="text/javascript" src="lib/json2.js"></script> |
이렇게 수정했는데, SCRIPT5009: 'jQuery'이(가) 정의되지 않았습니다. 가 아직도 보이는군요.
일반적으로 jQuery 동작은 jQuery(document).ready(function() { ... }); 안에 선언하고,
함수는 밖에 선언하는 경우가 많습니다. 아래 처럼요.
jQuery(document).ready(function() { |
이렇게 되면, jQuery가 ready되기 전에, 일반 Javascript 함수(?)에서 $.ajax를 인식하지 못해서 생깁니다.
ajax뿐 아니라 $.fancybox .. 등등 많겠죠.
자, 그럼 저 함수들을 jQuery(document).ready(function() { }); 안으로 넣으면 왠지 해결 될 것 같군요.
하지만 이렇게 수정하면 함수로 인식을 못합니다.
doAjax = function(param1) { } 와 같은 형태로 바꾸어 주시면 됩니다.
jQuery(document).ready(function() { |