logo
Vvedenie_v_Veb_programmirovanien_2 / Vvedenie_v_Veb_programmirovanien_2

Window.Open()

Метод open() предназначен для создания новых окон. В общем случае его синтаксис выглядит следующим образом:

myWin = window.open("URL", "имя_окна", "параметр=значение, параметр=значение, ...", заменить);

Первый аргумент задает адрес страницы, загружаемой в новое окно (можно оставить пустую строку, тогда окно останется пустым). Второй аргумент задает имя окна, которое можно будет использовать в атрибуте TARGET контейнеров <A> и <FORM>. В качестве значений допустимы также зарезервированные имена _blank, _parent, _self, _top, смысл которых такой же, как у аналогичных значений атрибута TARGET. Если имя_окна совпадает с именем уже существующего окна (или фрейма), то новое окно не создается, а все последующие манипуляции с переменной myWin будут применяться к этому окну (или фрейму).

Третий аргумент ‑ это не содержащая пробелов строка, представляющая собой список параметров и их значений, перечисленных через запятую. Указание каждого из параметров необязательно, однако значения по умолчанию могут зависеть от браузера, поэтому всегда следует указывать явно существенные параметры.

Параметры метода window.open()

Параметр

Описание

width

Ширина окна в пикселах (не менее 100)

height

Высота окна в пикселах (не менее 100)

left

Расстояние от левого края экрана до левой границы окна в пикселах

top

Расстояние от верхнего края экрана до верхней границы окна в пикселах

directories

yes/no

Наличие у окна панели папок (Netscape Navigator)

location

yes/no

Наличие у окна поля адреса

menubar

yes/no

Наличие у окна панели меню

resizable

yes/no

Сможет ли пользователь менять размер окна

scrollbars

yes/no

Наличие у окна полос прокрутки

status

yes/no

Наличие у окна поля статуса

toolbar

yes/no

Наличие у окна панели инструментов

Вместо значений yes и no можно использовать 1 и 0. Последний аргумент "заменить" является необязательным, принимает значения true и false и означает: следует ли новый URL добавить в history в качестве нового элемента или заменить им последний элемент history.

Метод window.open() возвращает ссылку на вновь открытое окно, т.е. объект класса Window. Его можно присвоить переменной, с тем чтобы потом можно было управлять открытым окном (писать в него, читать из него, передавать и убирать фокус, закрывать).

Приведем два примера открытия нового окна:

<FORM>

<INPUT TYPE=button VALUE="Простое окно"

onClick="window.open('', 'test1',

'directories=no,height=200,location=no,'+

'menubar=no,resizable=no,scrollbars=no,'+

'status=no,toolbar=no,width=200');">

<INPUT TYPE=button VALUE="Сложное окно"

onClick="window.open('', 'test2',

'directories=yes,height=200,location=yes,'+

'menubar=yes,resizable=yes,scrollbars=yes,'+

'status=yes,toolbar=yes,width=200');">

</FORM>

При нажатии кнопки "Простое окно" получаем окно со следующими параметрами:

При нажатии кнопки "Сложное окно" получаем окно, где: