将URL参数传递给加载的swf

时间:2012-10-01 20:03:30

标签: actionscript-3

我有swf的html页面传递参数:

<param name="movie" value="Template.swf?xmlName=63">

我可以访问swf文件中的参数值:

var val:String = root.loaderInfo.parameters.xmlName;

so val = 63

但是现在我要通过之前的SWF加载另一个swf。如何从第二个(加载的)swf中调用参数?

3 个答案:

答案 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

我不知道是什么或为什么但现在正在运行(: