VDS за 300р от нашего партнера SpaceWeb
[125]
13 мая 2014, 23:23

JavaScript узнать закрыто ли окно (вкладка) браузера из другого окна

Привет!

Как из JavaScript узнать закрыто ли окно или вкладка браузера из другого окна. Разумеется все делается на том же домене.

Задача такова, нужно производить действия, если потеряна связь с другим открытым окном. Остаётся вопрос, возможно ли узнать о закрытии окна из другого окна.

#javascript

Комментарии (1)
grom 14.05.2014 14:47

Можно воспользоваться механизмом postMessage см. webonrails.ru/post/1925/

Например при закрытии окна срабатывает событие onbeforeunload. Мы его можем отловить.

window.onbeforeunload = function() {
window.opener.postMessage('closed', 'http://www.example.com');
};

Ну, а в основном окне ловим наше сообщение.

window.addEventListener('message', function(event) {
if( event.origin != 'http://www.example.com' ) return;
if( event.data == 'closed' ) {
alert('popup окно было закрыто');
}
}, false);

Разумеется это работает только с popup окнами. Окнами открытыми программно из основного окна.
По другому, только если на ActionScript отслеживать, там есть механизм обмена данными между запущенными флешками.
+1

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Найди ответ на любой вопрос по Веб-разработке!
задать вопрос...
Вы можете разместить Рекламный пост самостоятельно, либо отправив контент по адресу admin@webonrails.ru→ Оплата здесь ←Неоплаченные посты удаляются.
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 24181]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 17467]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 13307]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 10316]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 10047]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7430]
[50]
31 Дек 2011, 14:57
Cron запускать раз в неделю
[просмотров 7059]

Вести с Хабра