Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   отказывается работать SharedObject (http://www.flasher.ru/forum/showthread.php?t=127688)

polol 20.07.2009 18:48

отказывается работать SharedObject
 
В HTML-сайт вделана Flash-сцена, в которой среди прочего имеются линки на страницы этого же сайта (при клике открываются в _self). При нажатии в броузере "назад" попадаем на изначальную HTML-страницу и Flash-анимация, естественно, запускается с самого начала.Хочу провернуть следующее: при попадании на исходную HTML-страницу через "назад" в первом же кадре послать Flash на нужный мне кадр.

Попробовал это через SharedObject, но почему-то при вызове кнопки с линком инфа в SO не записывается и возвращение на исходную страницу выдает значение undefined.
Есть ли какие-то очевидные причины, по которым отказывается работать SharedObject?

спасибо...

скрипт на первом кадре:
Код AS1/AS2:

var shared:SharedObject = SharedObject.getLocal("user");
shared.data.redirect;
if(shared.data.redirect == 1){
gotoAndStop("show");
}

а на кнопке:
Код AS1/AS2:

button_mc.onRelease = function (){
shared.data.redirect = 1
shared.flush()
getURL(link, "_self");
 };


iflamberg 20.07.2009 18:53

хм... по-моему SharedObject для http://site.com и для http://site.com/path/ будут разными объектами.
То, что вы описали называется deep linking. Есть наработки по этой теме - js-библиотека SWFAddress. http://www.asual.com/swfaddress/

Алиль 20.07.2009 20:46

Думаю, что вопрос ваш понял, а если нет, то извините за в мешательство.

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

Код AS1/AS2:

onEnterFrame function (){ //для первого ключевого кадра в отдельном слое.
mc_mc.gotoAndPlay(10);//предположительный номер кадра куда надо перейти-10
}


incorp 21.07.2009 17:43

попробуйте так
Код AS1/AS2:

 var so:SharedObject = SharedObject.getLocal("user", "/");

возможно повторно загруженая флешка будет считаться "другой" флешкой

polol 21.07.2009 20:13

@ iflamberg:

спасибо, видимо надо мыслить именно так (через swfaddress). жаль, что без JS не обойтись...думал, что с SharedObject пойдет и средствами flash

@Алиль:

боюсь, все несколько сложнее. при уходе со страницы на другую хотел дать команду, которую при возвращении словит первый кадр и направит на, к примеру, 333-й кадр с меткой "play from here". но как дать понять в первом кадре, что ты тут "уже был", но ушел, а теперь вернулся и не хочешь смотреть сначала? вот в чем дело...

@incorp:

сейчас попробую


Часовой пояс GMT +4, время: 05:17.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.