我有1.swf加载另一个2.swf,而我在2.swf里面做事情
1.swf更大
stage.addEventListener(MouseEvent.MOUSE_OUT,onMouseOut); 它继续引用父级的阶段而不是2.swf的阶段。 请帮忙。感谢
答案 0 :(得分:1)
只有一个阶段对象,它始终从根目录继承。任何时候你都可以在DisplayObject(Sprite,MovieClip)中访问属性“stage”,它实际上只是对root.stage的引用,只要将DisplayObject添加到根阶段,或者最终连接到某个对象的某个对象的子代,它就会被填充。阶段(显示列表)。显示列表只是连接到根阶段的各种显示对象的对象树。无论如何,关于你的问题,如果你只是想在你加载的swf上听事件做这样的事情:
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
loader.load(new URLRequest("swf2.swf"));
private function loadComplete(e:Event):void
{
var swf2Clip:MovieClip = loader.content as MovieClip;
swfClip.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
}
private function onMouseOut(e:MouseEvent):void
{
//Do something when swf2 is moused out.
}