在jQuery工具的flashmbed中使用JSON作为配置

在jQuery工具的flashmbed中使用JSON作为配置,flash,json,parameters,embed,jquery-tools,Flash,Json,Parameters,Embed,Jquery Tools,jQuery工具有flashmbed,它可以将JSON对象作为配置参数传递给嵌入的Flash对象。看 但它并没有确切说明如何在Flash中获取JSON对象。这就是问题所在。。。怎么做取决于你是在AS2还是AS3。我相信AS2只是在_根上设置变量,但我可能弄错了。在AS3中,您需要转到root.loaderInfo.parameters对象。所有变量都以键/值对的形式存储在那里 例如: HTML和JS: <script type="text/javascript" src="js/jquer

jQuery工具有flashmbed,它可以将JSON对象作为配置参数传递给嵌入的Flash对象。看


但它并没有确切说明如何在Flash中获取JSON对象。这就是问题所在。。。怎么做取决于你是在AS2还是AS3。我相信AS2只是在_根上设置变量,但我可能弄错了。在AS3中,您需要转到root.loaderInfo.parameters对象。所有变量都以键/值对的形式存储在那里

例如:

HTML和JS:

<script type="text/javascript" src="js/jquery.tools.min.js"></script>
<script type="text/javascript">
    $(function(){               
        $("#flashPlacement").flashembed(
            {
                src:"Main.swf"
            },
            {   //flashvars
                myJsonObj:
                {
                    someString:"string",
                    someNumber:123,
                    someOtherObj:
                    {
                        someString:"string2",
                        someNumber:456
                    }
                }
            }
        );
        $("#flashPlacement *").show();
    });
</script>
<script type="text/javascript" src="js/jquery.tools.min.js"></script>
<script type="text/javascript">
    $(function(){               
        $("#flashPlacement").flashembed(
            {
                src:"Main.swf"
            },
            {   //flashvars
                myJsonObj:
                {
                    someString:"string",
                    someNumber:123,
                    someOtherObj:
                    {
                        someString:"string2",
                        someNumber:456
                    }
                }
            }
        );
        $("#flashPlacement *").show();
    });
</script>
import com.adobe.serialization.json.JSONDecoder;
import org.casalib.util.FlashVarUtil;
import org.casalib.util.StageReference;

StageReference.setStage(stage);
var jsonString:String = FlashVarUtil.getValue("myJsonObj");

//use as3corelib's JSONDecoder
//http://code.google.com/p/as3corelib/
var obj:Object = new JSONDecoder(jsonString).getValue();

//now it can be used like...
trace(obj.someOtherObj.someString); //output: string2