5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:
性别:秘密
最后登录:2007-04-12
http://hbbalfred.5d.cn/
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2004/09/24 | loadMovie后的帧代码执行顺序
类别(Flash)
|
评论
(0)
|
阅读(229)
|
发表于 18:04
loadMovie后的帧代码执行顺序
自从上次
loadMovie后的attachMovie的问题
得以解决
这次和树树讨论的时候,又重温了这个问题.
就是loadMovie后在判断loading完毕后时,对加载进来的swf进行操作失败的原因
在用 getBytesLoaded()==getBytesTotal() 判断加载完毕后,对加载的swf执行 帧跳转是不行的
因为在当判断加载完毕后,直接delete掉事件循环,那么操作swf的代码也就执行了一次,在刚加载完毕的时候执行了一次.而这一次执行是在,加载的swf第一帧代码之前进行的!
所以,如果加载的swf第一帧有操作跳帧的代码,那么之前的操作都会作废.
因为flash的跳转帧机构是由堆栈来实现的
简单的说就是当flash在一帧里面发现一个和跳帧相关的命令就仍到一个堆栈中,直到此帧代码执行全部结束,然后开始分析这个堆栈,把堆栈中的一条条gotoandplay等命令拿出来执行,最后执行的,也就是我们能感受到的.
好像
stop();
gotoAndPlay(2);
那么你得到的是gotoAndPlay(2);的效果,反之依然....
当然他那个堆栈是从顶部一条条拿出来执行,最终实行最后一条的,还是拿出顶部的一条,把后面的全部delete的,我就不知道了,要去问flash开发人员了,呵呵,反正只要知道,每一帧中的跳转代码再多,也只有最后一个被执行的会实现
0
评论
Comments
日志分类
首页
[76]
Say
[10]
Flash
[31]
PHP
[3]
XML
[2]
Cool
[12]
Weapon
[10]
Other
[8]