2010-08-21 12 views
0

Quelqu'un peut-il m'aider?AS3 Préchargement Problème

Je suis confronté à un problème sur le préchargement de swf dans Chrome et IE. Cela ne fonctionne que dans Firefox.

Lorsque je précharge le flash, Iam obtient octetsTotal à 0. Donc quand i bytesLoaded divide par bytesTotal provoquera l'infini.

J'ai lu cet article sur GZIP. http://patrickmcd.com/2009/04/20/flash-preloading-errors-turn-off-gzip/

Mais testé que la compression de réponse n'a pas été gzippée.

Voici mon script préchargement:

addEventListener(Event.ENTER_FRAME, preloadSelf); 

function preloadSelf(e:Event):void { 
     var bytestotal:int = stage.loaderInfo.bytesTotal; 
     var bytesloaded:int = stage.loaderInfo.bytesLoaded; 
     var shellLoaded:int = bytesloaded/bytestotal * 100; 
     trace("bytestotal : ", bytestotal); 
     trace("bytesloaded : ", bytesloaded); 
     trace("shellLoaded : ", shellLoaded); 


     if (shellLoaded== 100) { 
      removeEventListener(Event.ENTER_FRAME, preloadSelf); 
      doSomethingElse(); 
     } 

}

Répondre

0
 
addEventListener(Event.ENTER_FRAME, preloadSelf); 

function preloadSelf(e:Event):void { 

    if(stage.loaderInfo.bytesLoaded > 0) 
    { 
     var bytestotal:int = stage.loaderInfo.bytesTotal; 
     var bytesloaded:int = stage.loaderInfo.bytesLoaded; 
     var shellLoaded:int = bytesloaded/bytestotal * 100; 
     trace("bytestotal : ", bytestotal); 
     trace("bytesloaded : ", bytesloaded); 
     trace("shellLoaded : ", shellLoaded); 


     if (shellLoaded== 100) { 
      removeEventListener(Event.ENTER_FRAME, preloadSelf); 
      doSomethingElse(); 
     } 
    } 
} 

+0

Pourquoi envelopper sa logique ENTER_FRAME en ce que si l'aide de l'instruction? – Aaron

+0

Seulement répondre vraiment au paragraphe 3, il ne résout aucun problème, c'est un commutateur de sécurité. Comme il y a un événement EnterFrame, et pas un ProgressEvent qui intervient lorsque le contenu commence à être chargé, il est théoriquement possible que la fonction renvoie une valeur 0. D'un autre côté, il n'y a aucune certitude que ce soit le même scénario que ce qui est mentionné dans l'article lié. – PatrickS