0

在我的 FLV 文件的第一帧中,我有这个预加载器代码:

//Stop Frame
stop();

//Create a listener to call the loading function as the movie loads
this.loaderInfo.addEventListener (ProgressEvent.PROGRESS, loading);

//Runs when the loading progress has changed
    function loading(event:ProgressEvent):void
    {

    //Determine the percent loaded from bytesLoaded and bytesTotal
    var percent:Number = event.bytesLoaded / event.bytesTotal * 100;

    //Display the percentage of the pre-loaded MovieClip
    percentage_text.text = int(percent)+"%";

        if(percent == 100){
            gotoAndStop(2);
        }
    }

当我尝试通过绝对路径从 Xampp 服务器运行 SWF 文件时,"http://localhost/test/mainFLV.swf"SWF 不会超过 0%。但是,当我将 SWF 嵌入 PHP 脚本并加载该 PHP 脚本时,SWF 会加载,但它不会显示预加载器正在进行。

有什么帮助吗?

编辑

刚刚在 Firefox 中对其进行了测试,在进入第二帧之前,我得到了预加载器的 62% 的闪光。然而,原来的问题在 Chrome 中仍然存在。

4

1 回答 1

1

当您在本地主机上测试它时,该PROGRESS事件经常触发,过于频繁,因此有时它不会被检测到。如果文件也已被浏览器缓存,则会发生这种情况。

您应该监听事件COMPLETE以确定文件是否已加载。

编辑

您可以将文件上传到慢速服务器;-) 或者,出于测试目的,使用网络速度限制软件。

但老实说,如果预加载器在正常情况下(平均速度连接)过快,则意味着不需要它。用户可以等待一两秒钟......您可以使用“旋转的东西”来代替。

于 2013-03-13T20:52:21.357 回答