我有 html 页面传递参数到 swf:
<param name="movie" value="Template.swf?xmlName=63">
我可以访问我的 swf 文件中的参数值:
var val:String = root.loaderInfo.parameters.xmlName;
so val = 63
但现在我要通过前一个 swf 加载另一个 swf。如何从第二个(加载的)swf 调用参数?
我有 html 页面传递参数到 swf:
<param name="movie" value="Template.swf?xmlName=63">
我可以访问我的 swf 文件中的参数值:
var val:String = root.loaderInfo.parameters.xmlName;
so val = 63
但现在我要通过前一个 swf 加载另一个 swf。如何从第二个(加载的)swf 调用参数?
最简单的方法是使用 LocalConnection。假设两个 swf 在同一个域上:
加载的 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 的更多信息,请参见此处。
您可以像在 html 中一样传递变量
var val:String = root.loaderInfo.parameters.xmlName;
var urlRequest:URLRequest = new URLRequest("second.swf?xmlName=" + val);
loader.load(urlRequest);
感谢您的帮助,但我这样做更简单,我从加载的 swf 访问了 var val :
var xmlTextName:String ;
var asdasd:Object;
asdasd = this.parent.parent.parent.parent;
xmlTextName = String(asdasd.val)// xmlTextName =63
我不知道是什么或为什么,但它现在正在运行(: