不是我的代码,试图在第11个小时修复它。
尝试从AS3电影中加载的旧版AS2电影中访问flashvars
AS3电影使用com.gskinner.utils.SWFBridgeAS3兼容AS2。
在AS2电影中无法访问html文件中定义的flashvars。 <不仅仅是“变量”(旧的AS2 flashvars方法)也不是
stage.loaderinfo.parameters
AS3将提供的。
似乎没有任何作用,甚至可以访问父AS3电影中定义的任何变量。
所以,在AS3电影中:
var myvar = 5;
在AS2电影中:
trace(myvar); => undefined
trace(parent.myvar); => undefined
我该如何解决这个问题?
谢谢!
答案 0 :(得分: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
答案 1 :(得分:0)
如果您通过SWFBridge与as2电影有工作连接,只需将这些flashvars传递给它。