Методы объекта window

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

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

 

Первый аргумент задает адрес страницы, загружаемой в новое окно (можно оставить пустую строку, тогда окно останется пустым).

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

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

 

Таблица 10.2 – Параметры третьего аргумента метода 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 Наличие у окна панели инструментов

 

Последний аргумент "заменить" является необязательным, принимает значения 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>

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

- directories=no — окно без панели папок;

- height=200 — высота 200px;

- location=no — поле адреса отсутствует;

- menubar=no — без меню;

- resizable=no — размер окна изменять нельзя;

- scrollbars=no — полосы прокрутки отсутствуют;

- status=no — статусная строка отсутствует;

- toolbar=no — системные кнопки браузера отсутствуют;

- width=200 — ширина 200px.

 

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

- directories=yes — окно с панелью папок;

- height=200 — высота 200 px;

- location=yes — поле адреса есть;

- menubar=yes — меню есть;

- resizable=yes — размер изменять можно;

- scrollbars=yes — есть полосы прокрутки;

- status=yes — статусная строка есть;

- toolbar=yes — системные кнопки браузера есть;

- width=200 — ширина 200px.

 

10.3.2 Метод close(). Метод window.close().позволяет закрыть окно. Чаще всего возникает вопрос, какое из окон, собственно, следует закрыть. Если необходимо закрыть текущее, то:

window.close(); self.close();

Если мы открыли окно с помощью метода window.open(), то из скрипта, работающего в новом окне, сослаться на окно-родитель можно с помощью window.opener. Поэтому, если необходимо закрыть родительское окно, т.е. окно, из которого было открыто текущее, то используется метод:

window.opener.close();

Если необходимо закрыть произвольное окно, то тогда сначала нужно получить его идентификатор:

id=window.open(); ... id.close();

Как видно из последнего примера, закрывают окно не по имени, а используют указатель на объект.

 

10.3.3 Методы focus() и blur(). Метод focus() применяется для передачи фокуса в окно, с которым он использовался. Передача фокуса полезна как при открытии окна, так и при его закрытии, например:

myWin.focus();

 

Поскольку мы пишем содержание нового окна из окна старого (родителя), то в качестве указателя на объект используем значение переменной myWin.

Чтобы увести фокус из определенного окна myWin, необходимо применить метод myWin.blur(). Например, чтобы увести фокус с текущего окна, где выполняется скрипт, нужно вызвать window.blur(). Эффект будет тот же, как если бы пользователь сам свернул окно нажатием кнопки в правом верхнем углу окна.

 








Дата добавления: 2017-02-20; просмотров: 498;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.