我学习了《Flash ActionScript2.0编程技术教程》p177发现书上讲的不同层的播放顺序有误。我试了试
在flash场景中建立了两个层:图层1和图层2。若图层1 在下面,图层2 在上面,分别在这两层的第1帧上写是
trace("图层1");
onEnterFrame=function()
{
trace("图层1=="+i);
}
和
trace("图层2");
i=1;
onEnterFrame=function()
{
i++;
trace("图层2=="+i);
}
则输出:
图层2
图层1
图层1==1
图层1==1
……
可见根本没有运行上层中的onEnterFrame=function(){}
若图层1 在上,而图层2 在下则输出:
图层1
图层2
图层2==2
图层2==3
图层2==4
……
而书上说Flash对多层的默认执行顺序是从上到下的说法有问题.
后来我在图层1 中加了个园,在图层2 中加了个矩形。分别加上如下代码:
onClipEvent(load)
{
trace("图层1是的园");
k=1
}
onClipEvent(enterFrame)
{
trace("图层1是的园::"+k++);
}
和
onClipEvent(load)
{
trace("图层2是的矩形");
k=0
}
onClipEvent(enterFrame)
{
trace("图层2是的矩形##"+k++);
}
图层2 在上时,则输出 :
图层2
图层1
图层1是的园
图层2是的矩形
图层2是的矩形##0
图层1是的园::1
图层1==1
图层2是的矩形##1
图层1是的园::2
图层1==1
图层2是的矩形##2
图层1是的园::3
图层1==1
若图层1 在上则输出:
图层1
图层2
图层2是的矩形
图层1是的园
图层1是的园::1
图层2是的矩形##0
图层2==2
图层1是的园::2
图层2是的矩形##1
图层2==3
图层1是的园::3
图层2是的矩形##2