我在名为cerrarSumInfo
的动画片段中有一个名为SumInfo
的动画片段,cerrarSumInfo
从舞台中删除SumInfo
。
代码:(在SumInfo
时间轴上)
cerrarSumInfo.addEventListener(MouseEvent.CLICK, cerrarSum);
function cerrarSum(e:MouseEvent):void
{
this.parent.removeChild(this);
TweenLite.to(buscador, 0.7, {x:14, y:354.95});
}
buscador
位于主时间轴上,所以当我测试时,我得到:
Access of undefined property buscador.
如何从buscador
引用sumInfo
?
我解决了:
我解决了,所有问题都是因为:
this.parent.removeChild(this);
TweenLite.to(buscador, 0.7, {x:14, y:354.95});
Y在补间之前移除了孩子,是的,我向buscador请求:
MovieClip(root).buscador;
谢谢!
答案 0 :(得分:1)
有几种方法可以从buscador
内部获得对suminfo
的引用。以下是两种方式:
使用root
关键字获取对主时间轴的引用。
MovieClip(root).buscador;
使用parent
关键字:
MovieClip(parent.parent).buscador; //one parent up is cerrarSumInfo, two parents up should be the main timeline
更简洁的方法是使用事件:
从此函数中取出补间:
function cerrarSum(e:MouseEvent):void
{
this.parent.removeChild(this);
}
然后,在主时间轴上:
sumInfo.addEventListener(Event.REMOVED_FROM_STAGE, sumInfoRemoved); //listen for when sumInfo is removed
function sumInfoRemoved(e:Event):void {
TweenLite.to(buscador, 0.7, {x:14, y:354.95});
}