Показать сообщение отдельно
Старый 27.08.2004, 21:38
v350 вне форума Посмотреть профиль Отправить личное сообщение для v350 Найти все сообщения от v350
  № 1  
v350

Регистрация: Jul 2004
Сообщений: 29
По умолчанию Механизм проверки перезагрузки страницы (f5)

Друзья, подскажите пожалуйста, что я делаю не так?
Идея: создать механизм проверки, была ли страница случайно перезагружена, или пользователь заходил на нее давно.
Способ: используя SharedObject.
Применение: в flash-игре, интенсивно получающей данные с сервера. Желательно отслеживать - если пользователь нажимает F5 и перезагружает страницу, флэш вероятнее всего грузится из кэша, а все необходимые для работы данные брать из последней сессии сохранения SharedObject (она, как я понимаю, должна автоматически произойти при выгрузке фильма из браузера).

Проблема в том, что код не работает. И не работает именно при нажатии кнопки F5. Если же принудительно закрыть/открыть страницу - все ОК, при перезагрузке - увы...
Неужели flash не сохраняет sharedobject при этом?

testInfo_so = SharedObject.getLocal("data");
var time = new Date();

if ((testInfo_so.data.avtomatData != undefined) && ((time.getTime()-testInfo_so.data.avtomatData)<2000)) {
outputText.text = "Произошла перезагрузка";
} else {
outputText.text = "Пользователь зашел впервые, или посещал сайт давно.";
}
setInterval(proverka, 1000);
function proverka() {
var now = new Date();
testInfo_so.data.avtomatData = now.getTime();

}

Как быть? В голову ничего кроме flush() в обработчике onEnterFrame не приходит - но это же не выход!
Может быть есть какие-либо способы?