Categories

Пропуск animation_header (SharedObject)

Template-help.com Team Ноябрь 15, 2010
No votes yet.
Please wait...

В: Как можно сделать так, чтобы анимация проигрывалась только тогда, когда посетитель впервые заходит на мой сайт и чтобы когда он же заходит повторно, анимация не проигрывалась?

О: Вы можете реализовать это с помощью Flash-аналога cookies. Этот аналог называется «SharedObject ()»

Класс «SharedObject ()»позволяет хранить некоторые данные на компьютере посетителей. С объектом этого класса вы можете вносить изменения тогда, когда проигрывается анимация. Когда посетитель заходит на сайт впервые, ему будет продемонстрирована полная анимация  «header/intro» в — с потрясающими звуком и визуальными эффектами. Но когда пользователь посещает сайт во второй раз, он может не захотеть видеть анимацию заголовка еще раз. Вы можете отключить все эффекты, а также вы можете определить время, когда это должно произойти. Это может быть любой период после первого визита: час, день, четыре дня, неделя, месяц и т. д. Когда этот срок истечет и пользователь зайдет на ваш сайт, «header/intro» будет проигран сначала вместе со всеми эффектами, звуками и т.д.

Чтобы это выполнить, необходимо установить продолжительность времени начала отсчета после первого визита, и добавить его в Shared Object, который затем хранится на компьютере посетителя. Каждый раз, когда пользователь заходит на сайт по истечении выбранного вами времени, ему будет проигрываться анимация. Как только анимация заканчивается, «the counter» (счетчик) сбрасывается на ноль и время начинает отсчитываться снова.

Легче всего понять данный механизм – это просмотреть демо-ролик: Как пропустить флэш-ролик

Вот код, используемый в демо-ролике:

var today = new Date();
var so:SharedObject = SharedObject.getLocal(«time»);
var period = 15000;

—————————————————————————————————

if (loaded == total)
   {
      if (!((_root.today-_root.so.data.val)<_root.period))
      {
         _root.so.data.val = _root.today;
         _root.so.flush();
         _root.gotoAndPlay(2); //full animation
      }
      else
      {
         _root.so.data.val = _root.today;
         _root.par = «skip»;
         _root.gotoAndStop(162);
      }
   }

Submit a ticket

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

Чат
We help you to choose the right product.