Есть ли способ определить, закрыто ли окно браузера? - PullRequest
1 голос
/ 28 января 2012

Есть ли способ определить, закрыто ли окно браузера с помощью GWT. Например, окно, открытое через GWT с использованием этого кода:

Window.open("some_url", "__blank", null);

Мне нужно определить, закрыто ли это окно, открытое через gwt. Есть ли способ сделать это?

1 Ответ

2 голосов
/ 28 января 2012

Я думаю, что это кросс-браузерная проблема. GWT имеет

 Window.addCloseHandler(new CloseHandler<Window>() {
            public void onClose(CloseEvent<Window> windowCloseEvent) {

            }
        });

Который обрабатывает событие onunload (происходит до закрытия документа браузером). Однако он не работает для обработки события закрытия браузера во всех браузерах, потому что при обновлении страницы это событие также запускается.

Поскольку GWT также генерирует JavaScript, см. Эту статью: Событие закрытия окна браузера Вот заключение этой статьи:

Заключение

Как мы уже говорили, не существует 100% надежного способа обнаружение события закрытия браузера во многих случаях, описанная выше техника может потерпеть неудачу. Например, если пользователь убивает процесс браузера из диспетчер задач, может быть еще много дел. И все же во многих случаях эта техника может быть удобной. Желаем удачи и счастливого программирования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...