2012-10-16 2 views

답변

0

richfaces가 js API를 제공한다고 생각하지 않습니다. 페이지 소스를 보면 모달 패널이 많은 중첩 된 div를 볼 수 있으며 크기는 픽셀 단위로 설정됩니다 (모달 값은 자동 설정 = true 또는 no는 중요하지 않음). divs의 크기를 조정할 수는 없지만, 물론 나쁜 방법입니다. (richfaces 3.3.3을 사용하고 있습니다)

+0

나는 그것을하는 매우 '우아한'방법이 아니라는 것을 알고있다. 그러나 그것은 내가하려고 노력하고있는 것이다, 어떻게해서든지 감사한다. –

0

Richfaces 4.3.x에서 크기 조정 팝업 패널에 대해 Javascript API이 있습니다. richfaces의 3.3.1.SP3에서

function changePanelSize() { 
    var modalPanel = #{rich:component('PanelName')}; 
    modalPanel.setLeft(200); 
    modalPanel.setTop(200); 
    modalPanel.resize(500,800); 
}; 
1

의 종류 지루했지만, 나는 해결책을 발견 : 왜 사람들에게 downvote 및하지

var PAD = 30; //const 
var idModalPanel = "#{idModalPanel}"; 
var modal = return #{rich:component(idModalPanel)}; 
modal.setLeft(PAD); 
modal.setTop(PAD); 
var width = Richfaces.getWindowSize().width - (2 * PAD); 
var height = Richfaces.getWindowSize().height - (2 * PAD); 
modal.getContentElement().style.width = width + "px"; 
modal.getContentElement().style.height = height + "px"; 
//Update the modal points. That's the trick! 
var borders = modal.borders; 
for (var i = 0; i < borders.length; i++) { 
    b = borders[i]; 
    b.startDrag(b.sizer); 
    b.doDrag(b.id); 
    b.endDrag(); 
} 
modal.doResizeOrMove(ModalPanel.Sizer.Diff.EMPTY); 
관련 문제