0

私のコードではなく、11 時間目に修正しようとしています。

AS3 ムービー内にロードされたレガシー AS2 ムービーから flashvars にアクセスしようとしています

AS3 ムービーは、AS2 互換性のために com.gskinner.utils.SWFBridgeAS3 を使用します。

AS2 ムービーでは、html ファイルで定義された flashvars にアクセスできません。「単なる変数」 (古い AS2 flashvars メソッド) としてでも、

stage.loaderinfo.parameters 

AS3 が提供するもの。

親 AS3 ムービーで定義された変数にアクセスしても、何も機能していないようです。

したがって、AS3 ムービーでは次のようになります。

var myvar = 5;

AS2 ムービーで:

trace(myvar); => undefined
trace(parent.myvar); => undefined

どうすればこれを回避できますか?

ありがとうございました!

4

2 に答える 2

2

SWFBridgeサイトで入手可能な情報を使用して、次のことを行う必要があります。

// in the AS2 SWF:
var myBridge:SWFBridgeAS2 = new SWFBridgeAS2("123456", clientObj);


// in the AS3 SWF:
var myBridge:SWFBridgeAS3 = new SWFBridgeAS3("123456", clientObj);

ID 123456は、使用したい任意の一意のIDにすることができます。

次に、AS3バージョンでは:

var myvar = 5;
myBridge.send("updateVar", myvar);

AS2バージョンでは、次の方法があります。

function updateVar(var) {
    trace(var); // will output 5
}

参照: http: //gskinner.com/blog/archives/2007/07/swfbridge_easie.html

于 2011-03-03T02:37:50.890 に答える
0

SWFBridge 経由で as2 ムービーとの接続が機能している場合は、それらの flashvars を渡すだけです。

于 2011-03-02T18:26:20.847 に答える