возвращаемое значение: отсутствует
|
NN2 |
NN3 |
NN4 |
NN6 |
IE3/J1 |
IE3/J2 |
IE4 |
IE5 |
IE5.5 |
совместимость |
• |
• |
• |
• |
• |
• |
• |
• |
• |
Метод window.close() закрывает окно браузера, на которое указывает объект window. Чаще всего он используется для закрытия вспомогательных окон, созданных из главного окна документа. Если вызов происходит не из вспомогательного окна, исходный объект window должен содержать запись о вложенном объекте. Для этого значение, возвращаемое методом window.open(), следует сохранить в глобальной переменной, которая будет доступна и другим объектам (например, в переменной, инициализированной не внутри функции). Если, с другой стороны, метод window.close() вызывает объект внутри вспомогательного окна, достаточно использовать ссылку window или self.
В ссылку необходимо обязательно включать ключевое слово window. Иначе JavaScript может трактовать это выражение как document.close(), которое имеет несколько другое применение. Закрыть окно из сценария можно только методом window.close(). Закрытие окна, конечно же, запускает обработчик события onUnload. После того как метод window.close() запущен, его уже нельзя остановить. Более того, обработчик события onUnload, запускающий процессы, требующие некоторого времени на выполнение (например, отправка формы из закрываемого окна) может не завершиться, поскольку окно закроется до окончания процесса. Это поведение невозможно исправить (за исключением обработчика onBeforeUnload в браузерах IE4+).
Особым является случай, когда вспомогательное окно пытается закрыть главное окно браузера (оператором self.opener.close()), в списке посещенных документов которого содержиться более одной записи. Как мера предосторожности против сценариев, закрывающих окна, созданные не ими, в браузерах NN3+ и NN4+ у пользователя запрашивается подтверждение на закрытие главного окна (с помощью диалогового окна, генерируемого браузером). Это средство защиты нельзя отменить, кроме как с помощью защищенных сценариев в NN4+, когда пользователю предоставляются права на управление браузером.
* Смотрите пример использования close ()