类似于Flash / ActionScript中的cookie

时间:2012-08-14 12:13:21

标签: actionscript-3 flash cookies shared-objects local-shared-object

我需要在flash文件中实现类似cookie的东西....而且我对ActionScript没有任何线索。 基本上它是一个带静音/取消静音按钮的视频。如果我将视频静音并刷新浏览器,则不会再次静音。所以我需要以某种方式保持静音状态。

这是我完整的ActionScript文件:

import flash.net.SharedObject;
var a:Boolean = false;

var cookie:SharedObject = sharedobject.getLocal("muted");
if (cookie.data.muted == true) {
    SoundMixer.soundTransform = new SoundTransform(0);
    Object(root).ton_btn.gotoAndStop(2);
}

ton_btn.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler);

function fl_MouseOverHandler(event:MouseEvent):void
{
 Object(root).ton_btn.buttonMode = true;
 Object(root).ton_btn.useHandCursor = true;
}

ton_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void
{
 if (! a)
 {
    var muteStatus:Boolean = true;
    cookie.data.muted = muteStatus;
    SoundMixer.soundTransform = new SoundTransform(0);
    Object(root).ton_btn.gotoAndStop(2);
    trace(a);
 }
 else
 {
    var muteStatus:Boolean = false;
    cookie.data.muted = muteStatus;
    SoundMixer.soundTransform = new SoundTransform(1);
    Object(root).ton_btn.gotoAndStop(1);
    trace(a);
 }
 a = ! a;
}

这不起作用,现在我的静音按钮闪烁......似乎if子句正在执行。 感谢您提前提示,提示或链接。 ;)

此致 尼尔斯

编辑: 太愚蠢......这只是一个错字。

var cookie:SharedObject = sharedobject.getLocal("muted");

必须是:

var cookie:SharedObject = SharedObject.getLocal("muted");

现在它正在运作。

1 个答案:

答案 0 :(得分:1)

我建议使用流行的ActionScript3.0 Cookie框架开源。通常,已知两种带有框架的cookie。请在开源下查看。您可以更快地解决您的问题。数字1是唯一的Sourcode和Tutorial,Number 2是一个完整的框架。

  
      
  1. Read and Write and Edit using a SharedObject

  2.   
  3. Actionscript3 Cookie Util

  4.