Остановка обновления, когда вспышка имеет фокус - PullRequest
0 голосов
/ 22 января 2009

Как остановить обновление браузера, когда всплывающее окно фокусируется на флеш-объекте?

Да, я тоже ненавижу всплывающие окна. Тем не менее, у нас есть флэш-анкета, которая разрушается пользователями, использующими обновление.

У меня также уже есть js, который эффективно блокирует обновление, пока вспышка не сфокусируется и пользователь не нажмет кнопку обновления.

У меня есть доступ к Flash через нашего разработчика Flash, но он не уверен, как это сделать. Самое близкое, что мы могли придумать, - это использовать trapallkeys для fscommand, но, похоже, он не работает.

Ответы [ 3 ]

1 голос
/ 22 января 2009

Не произойдет.

Ваша лучшая ставка - баннер с надписью «НЕ ОБНОВЛЯЙТЕ ЭТУ СТРАНИЦУ»

1 голос
/ 23 января 2009

Вы никогда не сможете заблокировать обновление пользователем ни с помощью клавиатуры, ни нажатием кнопки обновления с помощью мыши. Вместо того, чтобы тратить время на попытки его заблокировать, я бы предложил найти способ поддержки этого.

Хорошим способом было бы использовать локальные общие объекты, чтобы сохранить текущий прогресс во флэш-плагине пользователя. Они могут сохранять переменные локально на компьютере пользователя, без использования JavaScript или куки.

Вот документация для общих объектов Flash.

Используя эту технику, когда пользователь обновляется, просто перезагрузите хранящиеся до сих пор переменные и отобразите анкету, какой она была, когда пользователь ее покинул.

0 голосов
/ 22 января 2009

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

См .: Обнаружение поддержки перед загрузкой

и: Javascript для получения оповещения о перенаправлении при закрытии окна браузера

Edit:

Refresh - это событие уровня приложения, а не событие уровня клиента. Тебе не повезло.

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