Сделайте так, чтобы HTML-страница воспроизводила Flash-ролик только один раз (не при повторном посещении ...) - PullRequest
2 голосов
/ 10 июля 2009

Как было бы возможно, чтобы страница HTML воспроизводила флэш-анимацию только один раз, то есть, когда человек возвращается на эту страницу, Flash не будет воспроизводиться снова с самого начала, а просто покажет последний кадр анимации (или даже простое .jpg изображение этого последнего кадра)? Это вообще возможно?

Спасибо, L.

Ответы [ 2 ]

7 голосов
/ 10 июля 2009

вы можете сохранить cookie при первом посещении пользователем, чтобы показать, что пользователь посещал его ранее. (http://plugins.jquery.com/project/Cookie)

Затем, когда они возвращаются, передайте это значение во флэш-память (используя flashvars), чтобы она знала только воспроизведение последнего кадра. (http://bowievanling.com/blog/using-flashvars-with-swfobject-20-and-as3/)

Использование swfObject для встраивания вашей вспышки:

<script type="text/javascript">

var flashvars = {
  iscookie: "true"
};
var params = {
  menu: "false"
};
var attributes = { };

swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0","expressInstall.swf", flashvars, params, attributes);

</script>

в AS3 для загрузки frameNumber, если flashvar iscookie = true:

for (var fv in root.loaderInfo.parameters) {
   if(fv == 'iscookie'){
      if(root.loaderInfo.parameters[fv] == 'true'){
         gotoAndStop(frameNumber);
      }
   }
}

Josh

2 голосов
/ 10 июля 2009

В отличие от обычных файлов cookie, вы можете использовать Flash SharedObject. Это похоже на обычный файл cookie, но вы получаете к ним доступ через ActionScript, поэтому может быть проще, если вы сами создаете Flash-ролик. Вы просто сохраняете простое логическое значение, и затем фильм Flash может увидеть его в следующий раз, когда он откроется, и узнает, как отображать конечный кадр.

Вы можете прочитать о них здесь: http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/SharedObject.html

...