2013-03-13 46 views
0

在我的FLV文件的第一幀我有這樣的預加載器代碼:AS3預裝載代碼沒有進展

//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); 
     } 
    } 

當我試圖通過絕對路徑"http://localhost/test/mainFLV.swf"的運行從XAMPP服務器的SWF文件SWF不會超過0%。但是,當我將SWF嵌入到PHP腳本中並加載了PHP腳本時,SWF加載的內容,但它並未顯示預加載器的進度。

任何幫助?

編輯

只是測試它在Firefox中,我也得到了預加載器處於62%的閃存它進入第二幀之前。但是,原始問題仍然存在於Chrome中。

回答

1

當您在本地主機上測試它時,PROGRESS事件經常觸發,經常會觸發,所以有時候它不會被檢測到。如果文件已被瀏覽器緩存,則會發生這種情況。

您應該聽取事件COMPLETE來決定文件是否已加載。

編輯

您可以上傳文件到服務器速度慢或者;-),用於測試目的,利用網絡速度的限制軟件。

但說實話,如果preloader在正常情況下(平均速度連接)太快,這意味着它是不需要的。用戶可以等一兩秒......你可以用「旋轉的東西」代替。

+0

嘿謝謝你的幫助。我這樣做,它確實允許框架進展到第二幀。但是有沒有辦法減慢加載進度,以便預加載器能夠顯示%進度,因爲它速度如此之快? – Human 2013-03-13 20:59:47

+0

我編輯了答案。 – strah 2013-03-13 21:06:35