我有swf的html页面传递参数:
<param name="movie" value="Template.swf?xmlName=63">
我可以访问swf文件中的参数值:
var val:String = root.loaderInfo.parameters.xmlName;
so val = 63
但是现在我要通过之前的SWF加载另一个swf。如何从第二个(加载的)swf中调用参数?
答案 0 :(得分:1)
最简单的方法是使用LocalConnection。假设两个swfs都在同一个域上:
加载SWF:
var connection:LocationConnection = new LocalConnection();
connection.connect("connectionName");
function yourMethod(value:String):void
{
trace("I received "+value);
}
致电SWF:
var connection:LocationConnection = new LocalConnection();
var param:String = root.loaderInfo.parameters.xmlName;
conn.send("connectionName","yourMethod",param);
有关LocalConnection的更多信息,请参阅here。
答案 1 :(得分:0)
您可以像在html中那样传递变量
var val:String = root.loaderInfo.parameters.xmlName;
var urlRequest:URLRequest = new URLRequest("second.swf?xmlName=" + val);
loader.load(urlRequest);
答案 2 :(得分:0)
感谢您的帮助,但我做的更简单 我从加载的swf中访问了var val:
var xmlTextName:String ;
var asdasd:Object;
asdasd = this.parent.parent.parent.parent;
xmlTextName = String(asdasd.val)// xmlTextName =63
我不知道是什么或为什么但现在正在运行(: