Основы Web-инжиниринга. Часть 1. Громов Ю.Ю - 83 стр.

UptoLike

<INPUT TYPE=button VALUE="Простое окно" onClick="window.open ('about:blank','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('about:blank','test2',
'directories=yes, height=200,location=yes,menubar=yes,resizable=yes, scrollbars=yes,
status=yes,toolbar=yes,width=200');">
</FORM>
При нажатии кнопки "простое окно" получаем окно со следующими параметрами:
directories=noокно без меню;
height=200высота 200 px;
location=noполе location отсутствует;
menubar=noбез меню;
resizable=noразмер изменять нельзя;
scrollbars=noполосы прокрутки отсутствуют;
status=noстатусная строка отсутствует;
toolbar=noсистемные кнопки браузера отсутствуют;
width=200ширина 200.
При нажатии кнопки "сложное окно" получаем окно, где
directories=yesокно с меню;
height=200ширина 200 px;
location=yesполе location есть;
menubar=yesменю есть;
resizable=yesразмер изменять можно;
scrollbars=yesесть полосы прокрутки;
status=yesстатусная строка есть;
toolbar=yesсистемные кнопки браузера есть;
width=200длина 200.
Window.close(). Метод close() это оборотная сторона медали метода open(). Он позволяет закрыть окно. Чаще всего
возникает вопрос, какое из окон, собственно, следует закрыть. Если необходимо закрыть текущее, то:
window.close();
self.close();
Если необходимо закрыть родительское окно, т.е. окно, из которого было открыто текущее, то:
window.opener.close();
Если необходимо закрыть произвольное окно, то тогда сначала нужно получить его идентификатор:
id=window.open();
...
id.close();
Как видно из последнего примера, закрывают окно не по имени (значение атрибута TARGET тут ни при чем), а используют
указатель на объект.
Window.focus(). Метод focus() применяется для передачи фокуса в окно, с которым он использовался. Передача фо-
куса полезна как при открытии окна, так и при его закрытии, не говоря уже о случаях, когда нужно выбирать окна. Рассмот-
рим пример.
Открываем окно и, не закрывая его, снова откроем окно с таким же именем, но с другим текстом. Новое окно не появи-
лось поверх основного окна, так как фокус ему не был передан. Теперь повторим открытие окна, но уже с передачей фокуса:
function myfocus(a)
{
id = window.open("","example","scrollbars,width=300,height=200");
//открываем окно и заводим переменную с указателем на него
//если окно с таким именем существует, то новое окно не создается,
//а открывается поток для записи в окно с этим именем
if(a==1)
{
id.document.open();
//открываем поток ввода в уже созданное окно
id.document.write("<CENTER>>Открыли окно в первый раз");
//Пишем в этот поток
}
if(a==2)
{
id.document.open();
id.document.write("<CENTER>Открыли окно во второй раз");