Роботландский Университет © А.А.Дуванов |
Объект window находится в вершине иерархии и содержит в себе все другие объекты браузера:
Объект window описывает текущее окно браузера и его содержимое.
Справочные разделы снабжены иллюстрирующими примерами с пометками:
Если рядом с пометкой стоит цифра, то она обозначает версию браузера, начиная с которой метод или свойство работают корректно. Если цифры нет, описание действует в браузерах начиная с версии 3.
Перейдя на страницу примера, можно посмотреть исходный текст программы, выбрав позицию В виде HTML в меню браузера Вид.
свойство | описание | |||
---|---|---|---|---|
self | Свойство self является указателем на текущее окно. Пример использования этого свойства показан в разделе перемещение фокуса. | |||
opener |
Свойство opener является указателем на окно родителя.
Используя этот указатель, можно в созданном окне работать со всем тем,
что принадлежит родителю, например, использовать
родительские скриптовые функции и переменные.
примеры
|
|||
status defaultStatus |
Свойства status и defaultStatus содержат
соответственно временное и постоянное содержимое статусной строки.
Временное содержимое меняется при наезде мышиного курсора на ссылку или
при выдаче браузером диагностических сообщений.
примеры
|
|||
dialogArguments | Свойство dialogArguments возвращает аргументы, проходящие через диалоговое окно, как массив. Смотрите пример к методу showModalDialog. | |||
returnValue | Свойство returnValue определяет возвращаемое из окна значение. Смотрите пример к методу showModalDialog. |
метод | браузер | описание |
---|---|---|
open | IE NN | Открывает новое окно браузера. |
close | IE NN | Закрывает окно браузера. |
alert, prompt, confirm | IE NN | Стандартные диалоговые окна. |
showModalDialog | IE4 | Отображает новое модальное диалоговое окно. |
blur | IE NN | Уводит фокус из окна. |
focus | IE NN | Переводит фокус на окно. |
scroll | Показывает документ в окне с заданными абсолютными смещениями от его начала. | |
scrollBy | Перемещает документ в окне на заданные величины по отношению к текущему положению. | |
setInterval | IE4 NN4 | Указывает функции выполняться периодически через заданное количество миллисекунд. |
clearInterval | IE4 NN4 | Отменяет действие метода setInterval. |
setTimeout | IE NN | Запускает функцию через заданное количество миллисекунд. |
clearTimeout | IE NN | Отменяет действие метода setTimeout. |
var переменная = open(); var переменная = open(файл); var переменная = open(файл, имя_окна); var переменная = open(файл, имя_окна, параметры_окна); переменная.close(); |
параметры окна задаются в строке параметры_окна в виде:
"параметр1=значение1,параметр2=значение2,...,параметрN=значениеN" |
Замечание. Не рекомендуется оставлять пробел после разделительной запятой.
Описание параметров:
параметр | значение | описание |
---|---|---|
width | число | Ширина окна в пикселах. Минимальное значение 100. |
height | число | Высота окна в пикселах. Минимальное значение 100. |
left | число | Задает горизонтальную координату левого верхнего угла окна в пикселах. |
top | число | Задает вертикальную координату левого верхнего угла окна в пикселах. |
scrollbars | Задает отображение линеек протяжки. | |
resizable | yes, no, 1, 0 | Позволяет указать, может ли окно менять свой размер. |
menubar | yes, no, 1, 0 | Позволяет указать, отображается ли полоса меню. |
location | yes, no, 1, 0 | Позволяет указать, отображается ли полоса для ввода адреса. |
status | yes, no, 1, 0 | Позволяет указать, отображается ли полоса статуса. |
toolbar | yes, no, 1, 0 | Позволяет указать, отображается ли полоса кнопок. |
fullscreen | yes, no, 1, 0 | Показывается ли новое окно на полный экран или как обычное окно. По умолчанию как обычное окно. |
Поработайте на приведенном ниже испытателе, чтобы лучше понять смысл этих параметров. В качестве файла, задающего содержимое окна, можно указать:
Замечание. В испытателе строка параметры_окна представлена в виде суммы (конкатенации) строк для удобства размещения испытателя на экране. Так можно делать и в своих программах, чтобы в HTML-файле не было слишком длинных строчек. Там, где требуется разместить строку, всегда можно написать несколько строчек, соединяя их знаком +.
Метод close закрывает открытое окно. При этом обращение close() или window.close() закрывает текущее окно. Обращение win.close() или window.win.close() закрывает окно win, которое было создано из текущего окна при помощи метода open.
alert(сообщение); var переменная = confirm(сообщение); var переменная = prompt(сообщение); var переменная = prompt(сообщение, ввод_по_умолчанию); |
Функция alert выводит на экран модальное окно с заданным сообщением. Внутри окна всего одна кнопка Ok. Пользователь читает сообщение и убирает окно нажатием на кнопку Ok или клавишей Esc на клавиатуре.
Функция confirm выводит на экран модальное окно с заданным сообщением-вопросом. Внутри окна две кнопки Ok и Отмена. Функция возвращает:
Функция prompt выводит на экран модальное окно с заданным сообщением и строкой ввода. Внутри окна кнопки Ok и Отмена. Функция возвращает:
var переменная = showModalDialog(файл, аргумент, параметры_окна); |
параметры окна задаются в строке параметры_окна в виде:
"параметр1=значение1;параметр2=значение2;...;параметрN=значениеN" |
Замечание. Не рекомендуется оставлять пробел после разделительной точки с запятой.
Описание параметров:
параметр | значение | описание |
---|---|---|
dialogWidth | число | Ширина окна. |
dialogHeight | число | Высота окна. |
dialogTop | число | Вертикальная координата левого верхнего угла окна. |
dialogLeft | число | Горизонтальная координата левого верхнего угла окна. |
center | Выравнивать ли окно по центру экрана. | |
help | yes, no, 1, 0 | Показывать ли кнопку вызова подсказки в заголовке окна. |
В качестве примера использования метода рассмотрим построение собственной функции, подобной встроенной функции prompt.
Опишем эту функцию так:
/* Параметры функции: message - надпись на панели defaultInput - ввод пользователя по умолчанию features - параметры модального окна Возвращает: - null, если нажата кнопка "Отмена" или клавиша "Esc". - строку, которую ввел пользователь, если нажата кнопка "Ok". - undefined, если пользователь закрыл окно самостоятельно. */ function myprompt(message, defaultInput, features) { var args = new Array(message, defaultInput); return window.showModalDialog("myprompt.htm", args, features); } |
Функция myprompt переадресует свои аргументы методу showModalDialog при этом:
Ниже приводится испытатель для функции myprompt.
Замечание. При задании координат и размеров окна используйте следующие обозначения для единиц измерения:
- in дюймы
- cm сантиметры
- px пикселы
- em кегель текущего шрифта
Метод focus перемещает фокус на окно, по отношению к которому этот метод используется. Когда окно создается, оно автоматически становится активным, получает фокус. Метод blur действует обратным образом: уводит фокус из того окна, по отношению к которому применяется.
Создаем пустое окно, но фокус оставляем в текущем окне:
Переместим фокус в созданное окно:
Уберем фокус из созданного окно:
Выведем что-нибудь в созданное окно:
Снова переведем фокус в созданное окно:И, наконец, закроем его:
scroll(координата_по_горизонтали, координата_по_вертикали); scrollBy(смещение_по_горизонтали, смещение_по_вертикали); |
Координаты и смещения задаются в пикселах.
Создаем окно, содержимое которого задается файлом win04.htm:
Устанавливаем вертикальную линейку протяжки так, чтобы документ в окне начинался через определенное число пикселов по вертикали. Метод scroll производит абсолютную установку вне зависимости от первоначального положения документа в окне.
Метод scrollBy производит относительное перемещение документа в окне браузера. Попробуйте нажать кнопку Go несколько раз.
Закроем окно примера:
Метод setTimeout создает таймер, который выполняет заданные действия по истечении указанного числа миллисекунд. Метод clearTimeout выключает созданный таймер.
переменная = setTimeout("вызов_функции", число_миллисекунд); clearTimeout(переменная); |
Для выполнения действий, повторяющихся с определенным интервалом времени, используется метод setInterval. Метод clearInterval отключает действие метода setInterval.
переменная = setInterval("вызов_функции", число_миллисекунд); clearInterval(переменная); |
![]() |