Я борюсь с onbeforeunload, onunload и генерирую правильные сообщения в нужное время. Любая идея приветствуется. Это ситуация:
- когда я использую onbeforeunload, пользователь получает сообщение, чтобы выбрать, отойти ли от него, но я не могу его отключить - сообщение стандартное и появляется независимо от того, что находится в обработчике событий.
- когда я использую onunload, я могу контролировать возникающие сообщения «пока», но не могу предложить пользователю возможность изменить свое мнение.
Так, например, если есть данные для сохранения. С помощью onbeforeunload появляется сообщение, независимо от состояния данных пользователя, спрашивающее, хотят ли они уйти или нет. С помощью onunload я могу выбрать сообщение и проверить, есть ли несохраненные данные, прежде чем спрашивать пользователя, спасая его от проблем, если они сохранили, но мой пользователь не может остаться на странице.
Я что-то там упускаю? Кажется, я не могу получить простое поведение, которое я хочу - проверить состояние приложения, отправить сообщение и предложить пользователю принять меры, прежде чем они уйдут. Или для получения такого поведения используется одно или оба события?