2011-04-10 4 views
3

같은 페이지에 스크립트에 문제 다음 : 그러나yepnope.js - 그럼 내가 yepnope.js을 포함

<script type="text/javascript"> 
/*<![CDATA[*/ 
    yepnope([{ 
     load: 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js', 
     complete: function() { 
     if (!window.jQuery) { 
      yepnope('local/jquery.min.js'); 
     } ... 

, JQuery와는 CDN에서로드하는 동안, 페이지의 끝에 다음 스크립트입니다

/*<![CDATA[*/ 
jQuery(function($) { 
jQuery('#Project_projectDateStart').datepicker({'dateFormat... 

이 오류가 jQuery를 내가 마지막에 스크립트를로드 할 수밖에 없다

이 (YII의 datepic로드 정의가 없습니다 : 오류를 보여주는 이 경우 ker).

도움을 주시면 감사하겠습니다.

+1

간단한 솔루션 - 내 블로그 게시물을 참조하십시오. [Here] (http://scott.donnel.ly/yepnope-jquery-document-ready/) – Sc0ttyD

답변

3

yepnope를 사용하려면 콜백 함수를 사용해야합니다. 비동기 적으로로드되기 때문에 jQuery를 직접 호출 할 수 없습니다. yepnopejs.com에 대한 문서를 파싱하는 것은 약간 어렵지만 그게 요점입니다.

기본적으로 Yii의 기본 AJAX 및 다른 JS 도우미 중 누구도 내가 말할 수있는 것에서 엔 엔도로 작업하지 않습니다. 또는 Yii가 Google에서로드 된 yepnope async 외에도 jQuery의 사본을 추가로 포함했기 때문에 작동 할 수도 있습니다. Yii가 yepnope와 같은 비동기 로더로 올바르게 작동하도록 스크립트를로드하는 방식을 수정하는 작업을해야 할 것입니다.

행운을 빌어 요! 비동기 로더는 페이지 성능에 좋으며 항상 페이스 북을 사용합니다.

+0

감사합니다. Yii js가 별도의 파일로 삽입되었는지 POS_END가 아니라면 차이가 있는지 궁금합니다. 계속 찾고있을거야. – Joe

+0

Yii JS가 삽입 된 위치에 관계없이 (포함 파일이 HEAD에 있고 바인딩이 대개 END에 있음) Yii는 jQuery (또는 $)를 직접 호출하고 jepery가로드되기 때문에 yepnope가 작동하지 않는 방식으로 작동합니다 그 비동기 네임 스페이스에서. 내가 생각하는 yepnope를 사용하기 위해 Yii 스크립트 관리자를 꽤 재 작성해야 할 것이다. 건배! – thaddeusmt

관련 문제