2013-06-07 3 views
0

입니다. Modernizr을 사용하여 소스를로드하여 jQuery 레이아웃을 구성하고 있습니다. 문제는 $ ('body'). layout() 변수가로드 된 리소스 (script/webframe.js) 중 하나에 있기 때문에 가져올 수 없다는 것입니다. 나는 시도 : onDesktopWebFrameLoadComplete 스크립트/webframe.js에 레이아웃을 반환Modernizr.load()의 범위를 벗어나는 변수를 검색하면 범위가

var myLayout; 

function loadDefaultLayout() { 

    Modernizr.load([{ 
     load: ['stylesheets/jquery.layout.css', 
       'script/jquery.layout.min.js', 
       'script/webframe.js'], 
     complete: function() { 
      myLayout = onDesktopWebFrameLoadComplete(); 
     } 
    }]); 

    alert(myLayout.options.west.resizable); 
} 

.

나는 움직이는 경고를 시도했다 (myLayout.options.west.resizable); onDesktopWebFrameLoadComplete 직후에 경고가 표시되었습니다. 하지만 그것을 load() 범위 밖으로 옮기면 정의되지 않은 오류가 발생합니다 (myLayout 변수의 경우).

내 질문 : Modernizr.load() 함수 범위를 벗어나는 변수를 검색 할 수 있는지 알고 싶습니다.

답변

0

내 문제는 자바 스크립트 파일에서 함수를 호출 한 올바른 html 파일에 전역 변수를 정의하지 않았다는 것입니다.

요약하면.

window.myLayout; 

이 그런 다음 변수를 변경됩니다 리소스를 추가 (즉, 부하() 함수를 포함)

이 자원에 변수를 변경합니다 : window.myLayout = "이 방법은 다른 모든 전에 변수를 정의 다른 것";

이제 리소스가 포함 된 html 파일에서 사용할 수 있습니다.