2013-07-23 4 views
1

dojo 유형 dijit.layout.BorderContainer의 div가 있고 뷰포트의 크기와 관련하여이 bordercontainer의 크기를 동적으로 설정하려고합니다. 국경 컨테이너를 생성하는 HTML 코드는dijit.layout.BorderContainer 크기 조정시 내부 div 크기 조정

<div dojoType="dijit.layout.BorderContainer" design="sidebar" gutters="true" liveSplitters="true" id="borderContainer" style="border: solid green 3px;"> 
<div dojoType="dijit.layout.ContentPane" splitter="true" region="leading" style="width: 230px; padding:2px 0px 0px 0px;"> 
</div> 
</div> 

나는 다음과 같은 자바 스크립트 코드

var viewport = dojo.window.getBox(dojo.doc); 
dojo.setStyle('borderContainer','height','430px'); 

를 사용하여 경계 컨테이너의 크기를 업데이트하지만 난의 크기를 볼 수 있었다 코드를 실행에 오전 유형 경계 컨테이너의 div가 변경되지만 경계 컨테이너 유형의 div 내부 div는 변경되지 않습니다.

답변

2

위젯에서 resize으로 전화해야 위젯의 크기가 조정됩니다.

var viewport = dojo.window.getBox(dojo.doc); 
var borderContainer = dijit.byId('borderContainer'); 

dojo.setStyle(borderContainer.domNode, 'height','430px'); 
borderContainer.resize(); 

다른 방법

내가 경계 컨테이너가 전체 화면을 차지하려는 경우, 나는 그것이 height 100 %에 width의 설정합니다. 테두리 컨테이너의 모든 상위 DOM 노드도 높이가 100 %로 설정되어야합니다 (즉, <html>, <body> 등)

+0

감사합니다. Craig 덕분에 도움이되었습니다. – Balachandar

관련 문제