>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >открытие нового окна http://forum.mozilla-russia.org/viewtopic.php?id=10308 |
cesspit > 15-05-2006 10:30:10 |
мне нужно создать новое окно фаерфокса наподобии как в расширении Lingvo-online при показе результатов поиска (там оно создаётся через document.commandDispatcher.focusedWindow.open(...)), только я попробовал сделать как в этом расширении и меня не устаивает то что появляющееся окно является "всплывающим" окном текущего со всеми вытекающими блокироваками и то что я не нашёл как заставить это окно позиционироваться по центру текущего. |
Anton > 16-05-2006 13:58:21 |
Может, вот эта: http://xul.ru/tutorial/8-windows.php ссылка поможет ? |
cesspit > 16-05-2006 17:31:21 |
Anton пишет
спасибо, прочитал, вызвал open у this вместо document.commandDispatcher.focusedWindow, от "всплываемости" избавился, тока никак не получается отобраэить окно по центру экрана var myWin = open("","", "width=650,height=300,centerscreen,menubar=no,resizable=yes,scrollbars=yes,status=no"); выводит в левой верхней части, не вплотную но и совсем не по центру. |
Anton > 16-05-2006 20:57:39 |
centerscreen работает только для окон, у которых в mode указано chrome. Я так думаю, окно браузера не размещается по центру экрана т. к. его координаты просто берутся из local-store. Так что, только "вручную", наверное. По центру экрана: Выделить код Код:var mode = "left=%l,top=%t,width=650,height=300,centerscreen,menubar=no,resizable=yes,scrollbars=yes,status=no"; var l = (screen. availWidth - 650) / 2; var t = (screen. availHeight - 300) / 2; mode = mode. replace (/%l/, l); mode = mode. replace (/%t/, t); window. open ("about:blank", "", mode); по центру вызывающего окна: Выделить код Код:var mode = "left=%l,top=%t,width=650,height=300,menubar=no,resizable=yes,scrollbars=yes,status=no"; var l = window. screenX + (window. outerWidth - 650) / 2; var t = window. screenY + (window. outerHeight - 300) / 2; mode = mode. replace (/%l/, l); mode = mode. replace (/%t/, t); window. open ("about:blank", "", mode); Да, и как пользователь. Пользователь TBE: меня жутко раздражают новые окна браузера. |