0

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");

今、それは働いています。

4

1 に答える 1

1

人気のある ActionScript3.0 Cookie Framework であるオープンソースに従うことをお勧めします。一般に、フレームワークに含まれる 2 種類の Cookie が知られています。オープンソースの下をご覧ください。問題をより迅速に解決してください。1 番はソースコードとチュートリアルのみで、2 番はフレームワークだらけです。

  1. SharedObject を使用した読み取り、書き込み、および編集

  2. Actionscript3 Cookie 使用率

于 2012-08-14T13:30:46.337 に答える