0

我实际上不需要帮助,我只是想知道您对 Flash CS4 (AS3) 奇怪行为的看法。应该有我错过的东西。1) 会发生什么:flash 电影在 if(bytesLoaded==bytesTotal) 之间的任何(甚至不存在的)函数调用上播放,并且不会在注释掉的行或空白行上播放。2)应该看到什么:没有动作 - 我不调用任何时间线函数,所以电影不应该播放。任何警告或错误?我不知道,flash 在处理错误的方式上总是如此 *-nixy。3) 其中:在

if(stage.loaderInfo.bytesLoaded==stage.loaderInfo.bytesTotal)

第一帧上的子句 (AS3)

我认为 adobe 自己负责猜测如果我们使用 bytesLoaded 和 bytesTotal,那么我们想播放电影:|。如果我想设置一个号码并且不想玩它怎么办?

我不使用自定义文档类,所以我使用 root.* 而不是 MovieClip(root).*

---这是第一帧的 AS3 代码,以及接下来 1999 帧中的嵌入视频

stop();


root.addEventListener(Event.ENTER_FRAME,RootOnEnterFrame);

function RootOnEnterFrame (evt:Event) {
 if(stage.loaderInfo.bytesLoaded==stage.loaderInfo.bytesTotal){

                   //anyfunctionname(anynumber);

             Math.ceil(1599);

                   funcdoesnotexists(7);                   

    }
}
4

2 回答 2

1

这里的问题是网络服务器并不总是告诉浏览器文件有多大。不幸的是,Flash 将其解释bytesTotal0. 当然,0 == 0这是真的。

您可以事先让您的 swf 知道大小或配置网络服务器以发送此信息。前者是解决此问题的最常见方法。

于 2010-04-23T20:14:09.323 回答
-1

嘿,我认为除了来自 Macromedia 的 Adob​​e/flash 人之外没有人有这个想法。

感谢回复。

于 2010-05-07T08:29:50.983 回答