2013-07-15 2 views
1

jQuery UI 레이아웃 플러그인 (http://layout.jquery-dev.net/)을 사용하고 있습니다. 특정 매개 변수에 따라 모달 창에 레이아웃을로드해야합니다. 그래서 이벤트에서 나는 다음과 같이합니다 :jQuery 레이아웃 플러그인 - 동적 레이아웃 만들기

$('<div id="container"><div class="ui-layout-west"> <div class="left-panel"><div class="fuelux">Somthing here</div> </div> </div> <div class="ui-layout-center">Something else here </div></div>').layout(); 

왜 레이아웃을 만들지 모르겠다. 플러그인이 이와 비슷한 것을 지원합니까? ..

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

+0

물론, 그 작동합니다. 그러나 실제로 페이지에 콘텐츠를 추가하고 있습니까? 나는 당신이 레이아웃을 부르기 전에 그들에게 dom의 일부가 될 필요가 있다고 기대한다. –

+0

예, 콘텐츠에 모달을 추가하고 있습니다. 그래서 대화 상자를 먼저 생성 한 다음 #content를 찾아서 layout()을 호출해야할까요? – user1791567

+0

기본적으로 그렇습니다. @ cfs의 대답과 주석을 참조하십시오. –

답변

1

먼저 DOM에 HTML을 추가 한 다음 레이아웃을 초기화해야합니다. 아래의 예에서, 나는 body에 컨테이너를 추가 해요,하지만 당신은 DOM의 모든 요소를 ​​추가 할 수 있습니다

$('<div id="container"><div class="ui-layout-west"> <div class="left-panel"><div class="fuelux">Somthing here</div> </div> </div> <div class="ui-layout-center">Something else here </div></div>').appendTo('body').layout(); 

Working Demo

+0

주 레이아웃을() ' –

+0

좋은 ... 나는 appendTo가 돌아올 것이라고 확신하지 못했다. 하지만 당신 말이 맞아요, 불필요한 조회를 저장하기 위해 업데이 트됩니다 – cfs

+0

그것은 부분적으로 .. 작동하지 않을 것 같습니다. 이제 모든 레이아웃이 사라집니다. . $ ('

')으로 .Append ($ expressionEditor) .appendTo ('몸') 대화 상자 ({ 모달 : 사실, 버튼 : { .... }, 개방 : 기능 (이벤트 , ui) { $ (this) .find ('컨테이너'). 레이아웃(); } }); – user1791567