묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
모듈 Template에서 Jquery 사용 오류
2010.01.21 12:44
간단히 XE와 연동되는 화면만 하나 만들어 보려다가
욕심이 커져서 Document 모듈에 기반한 모듈을 bodex를 해독해가면서 제작하고 있습니다.
모듈 아래의 tpl/list.html에
<script type="text/javascript" >
$(document).ready(function () {
.....
}
</script>
와 같이 jquery 를 이용한 이벤트를 처리하려고 합니다.
그런데 바로 $() 부분에서 바로 에러가 납니다.
대신에
(
function
($){
$(document).ready(function () {
.....
}
})(
jQuery
);
와 같이 하면 에러가 나지 않습니다.
list.html 파일에 강제적으로
<script type="text/javascript" src="/(XE경로)/common/js/jquery.js"></script>
와 같이 넣어주면 오류가 발생하지 않습니다.
소스보기로 해보면
<script type="text/javascript" src="/xe/files/cache/optimized/......js.php"></script>
파일에는 jquery.js를 포함하고 있는 것으로 보입니다.
왜 이런 결과가 나오는 것일까요 ?
어떻게 조치해야하는 것일까요 ?
도움 부탁드립니다.
댓글 2
-
라르게덴
2010.01.21 13:54
-
봉이지비
2010.01.21 16:46
라르게덴님 답변 감사합니다.
그냥 $대신에 jQuery로 쓰기로 했습니다.
아직 사용한 곳이 많지 않아 찾아서 모두 변경했습니다.$(document).ready(function () { .... });
을
jQuery(document).ready(function () { .... });
요롷게 변경하면 되군요
이게 덜 번거로운 것 같습니다.
XE에서 사용되는 jquery는 $를 바로 사용하지 않도록 해놨습니다.
타 js 프레임웍(prototype 등)과 충돌을 피하기 위함입니다.
위 쓰신
(
function
($){ 이걸 사용하셔서 하시던지
http://docs.jquery.com/Core/jQuery.noConflict 여길 참조하세요.