![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
Припустим есть флеш сайт с прелоадером, всё загрузилось воспроизвелась анимация и юзьвер нажимает F5 - у меня происходит обновление с первого кадра, - тоисть обновление захватывает прелоадер.
Как сделать чтоб при о6новлении сайта анимация началась со второго кадра, - тоисть чтоб не было видно прелоадера? У меня так сделано, - что после всей загрузки юзер должен натиснуть кнопочку - тогда начинает воспроизводится анимация. |
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
SharedObject
|
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
- посмотрел в поиске по "SharedObject" - ничего не разобрался, - может кто подскажет мне что то конкретней?Как реально это сделать? ![]() |
|
|||||
var so:SharedObject = SharedObject.getLocal ("some_name");// Вместо some_name любое имя. Хотя оно не имеет значния, т.к. для каждого домена переменные хранятся отдельно
if (so.data.reload== true)
{
gotoAndPlay ("anim");// Кадр с анимацией
}
else
{
so.data.reload = true;
so.flush();
gotoAndStop ("preloading");// Кадр с прелоадером
}
|
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
Только надо сажать время последнего захода на сайт, а потом проверять разницу. Час, допустим, прошел - показывай анимацию, не прошел - обновляй время последнего захода на сайт и не показывай анимацию.
Если есть php на сервере, можно открывать сессию и впечатывать flashvars-ами флажок для показа прелоудера, тогда это будет жить до закрытия броузера. |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
Цитата:
Или я что то не так делаю? |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
Обновляет браузер - так как я хотел. - но пропал прелоадер..
![]() |
|
|||||
|
Код должен стоять до прелоадера.
Если нужна кнопка - то вместо gotoAndPlay("anim") нужно написать gotoAndStop ("start_button"), и в кадре anim создать кнопку перехода на кадр с анимацией. Хотя если честно не вижу смысла в этом SharedObject. ИМХО лучше сделать по другому - перед появлением прелоадера нужно проверить, весь ли ролик загружен. Если он в кэше браузера (т.е. загружать ничего не надо), то прелоадер не нужен, и можно сразу показывать кнопку старта анимации. А если нет, то показывать прелоадер: Последний раз редактировалось Tardos Mors; 06.05.2007 в 00:01. |
|
|||||
|
Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
|
var so:SharedObject = SharedObject.getLocal ("some_name");
var now = (new Date()).getTime();
var timeOut = 1000*10;// 10 секунд, для теста
// var timeOut = 1000*60*60; // час, для работы
function refreshLastVizit(){
so.data.lastVizit = (new Date()).getTime();
}
setInterval(refreshLastVizit, timeOut/2 );
var deltaT = now - ( so.data.lastVizit || 0 );
refreshLastVizit();
if ( deltaT <= timeOut ){
trace ("hello again");
gotoAndPlay ("anim");// Кадр с анимацией
}else{
trace ("hello first time");
gotoAndStop ("preloading");// Кадр с прелоадером
}
Последний раз редактировалось Kikasso; 05.05.2007 в 23:56. |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 302
|
Спасибо, - сейчас попробую...
![]() Ещё один такой наболевший вопросик. Можно как то с помощью флеша (скрипт какой то?) проверять наличие флеш плеера перед загрузкой и если его нет - то устанавливать? (в поиске смотрел - но нашёл что это можно сделать только с помощью РНР). |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:03. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|