我有2个SWF。一个Parent.swf和另一个是child.swf。
在父SWF中的我正在加载子swf。
我正在使用加载程序来加载swf。我的代码如下:
----------------------------------------
stop();
var req:URLRequest = new URLRequest("stalla.swf");
var _loader = new Loader();
var stallaloader1:MovieClip=new MovieClip();
addChild(stallaloader1);
Object(this).stallaloader1.x=5000;
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loader_complete);
_loader.load( req );
stallaloader1.addChild(_loader);
trace(stallaloader1.x);
//_loader.vipin="Ashwini n Meha";
function loader_complete(evt:Event):void {
//addChild(_loader);
var _loader:MovieClip = MovieClip(evt.target.content);
//addChild(_loader); //embedSWF
//stallaloader1.stallclick;
//_loader.stallclick;
//evt.currentTarget.x=1000;
// btn2.addEventListener(MouseEvent.CLICK,_loader.stallclick);
btn2.addEventListener(MouseEvent.CLICK, function() {videovariables(2)});
}
function videovariables(vid):void {
trace(_loader.vipin);
_loader.vipin="Overwrite with Ashwini"
trace(_loader.vipin);
}
如果在loader_complete中调用,那么这3行效果很好,但是
如果我们将它们放在videovariables函数中,我们会收到错误:
ReferenceError:错误#1069:在flash.display.Loader上找不到属性vipin,并且没有默认值。 at _3dstalls_fla :: Symbol1_1 / videovariables()[_ 3dstalls_fla.Symbol1_1 :: frame1:53] 在Function /()[_ 3dstalls_fla.Symbol1_1 :: frame1:49]
可能是什么原因?请告诉我。
谢谢
答案 0 :(得分:1)
如果您查看错误消息,则说明: flash.display.Loader 上找不到Property vipin 意思是_loader指的是Loader实例,而不是MovieClip。
由于您想要的MovieClip已加载到加载程序(_loader
)中,因此您可以使用Loader类的content
属性访问它。
function videovariables(vid):void {
trace(_loader.content.vipin);
_loader.content.vipin="Overwrite with Ashwini"
}