Можем ли мы зафиксировать событие, когда пользователь нажимает X в окне браузера? - PullRequest
0 голосов
/ 20 января 2010

Есть ли способ отличить обновление от закрытия в Javascript?я использую window.onbeforeunload сейчас, который прекрасно работает в IE.Чтобы избежать вызова из любого места, кроме закрытия, я установил флажок на КАЖДУЮ кнопку ... это кажется трудным, хакерским решением, но после поисков в Google в течение нескольких часов это было лучшее, что я смог найти.

Разве нет события onclose для IE ?????или onclick?

Мне нужно только поддерживать IE, а не FF, поэтому, пожалуйста, не размещайте ничего, связанного с FF, я не могу его использовать.Спасибо!

Ответы [ 2 ]

1 голос
/ 20 января 2010

Насколько я знаю, в JavaScript невозможно отловить нажатие кнопки X (закрыть) в любом браузере. По моему мнению, это связано с соображениями безопасности ... JavaScript не может (и никогда не сможет) прослушивать сообщения ОС, такие как закрытие текущего окна.

Единственное известное мне решение (которое вы, похоже, используете):

<body onunload="alert('Fired');">

Но, как вы узнаете, срабатывает ли при закрытии и при перезагрузке. Опять же, это нормальное поведение, потому что, AFAIK, для движка JS перезагрузка такая же, как закрытие, а затем повторное открытие той же страницы.

0 голосов
/ 20 января 2010

AFAIK, нет никакого специального события IE onclose.

...