Прекращение обновления, когда вспышка имеет фокус

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

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

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

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


person Community    schedule 22.01.2009    source источник


Ответы (3)


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

Лучше всего подойдет баннер с надписью «НЕ ОБНОВЛЯТЬ ЭТУ СТРАНИЦУ».

person Gareth    schedule 22.01.2009

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

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

Здесь документация по общим объектам Flash.

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

person sthg    schedule 23.01.2009

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

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

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

Редактировать:

Обновление — это событие уровня приложения, а не события уровня клиента. Не повезло тебе.

person Diodeus - James MacFarlane    schedule 22.01.2009
comment
onbeforeunload не поможет. Это не остановит обновление. Это также должно поддерживать ‹b›‹i›каждый‹/i›‹/b› основной браузер. - person ; 22.01.2009