IceFaces: проблема с автоцентром panelPopup в IE

У меня проблемы с panelPopup и IE8. Когда я устанавливаю autoCentre="true" и positionOnLoadOnly="true", я ожидаю, что всплывающее окно появится в центре окна просмотра и останется там. Это прекрасно работает в Safari, Chrome и Firefox, но в IE всплывающее окно «следует за прокруткой», если вы понимаете, что я имею в виду. То есть, если страница, на которой отображается всплывающее окно, длиннее всплывающего окна, всплывающее окно повторно центрируется при прокрутке страницы. Кроме того, и это более серьезная проблема - если всплывающее окно длиннее страницы, я могу прокручивать только часть пути вниз, тогда оно повторно центрируется. Это означает, что я никогда не увижу информацию внизу всплывающего окна...

Это код, используемый для создания всплывающего окна:

<ice:panelPopup
id="popup"
positionOnLoadOnly="true"
autoCentre="true"
style="z-index:999; background: #FFFFFF;"
resizable="false"
draggable="false"
modal="true"
clientOnly="true"
visible="#{SomeBean.popupRendered}" >

Любые идеи?

Спасибо!


person Malakim    schedule 16.11.2010    source источник


Ответы (1)


Согласно документации, опция autoCentre должна удерживать ее по центру при прокрутке и изменении размера окна, но перетаскивание должно отключить ее. Установка draggable на true может дать вам разумные результаты, потому что пользователь может перетащить его в положение, в котором он может видеть все всплывающее окно.

person JOTN    schedule 30.11.2010
comment
Да, возможно, так оно и есть — мы решили разбить диалоговое окно с помощью panelTabSet, а не просто длинного списка, который у нас был ранее. Это выводит нас из всей игры прокрутки. - person Malakim; 07.12.2010