Page bloquée rechargement page

floo75 Messages postés 6 Date d'inscription jeudi 6 mai 2010 Statut Membre Dernière intervention 26 août 2011 - 27 janv. 2011 à 10:22
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 - 31 janv. 2011 à 16:53
Bonjour à tous amis scripteurs

Comme je l'ai indiqué dans le titre du message, j'ai un souci avec le rechargement de la page flash de mon site sur certains ordis.

J'ai fort logiquement intégré mon swf dans une page html et, au lancement de la page, pas de problème, tout s'affiche correctement. Par contre, au rafraîchissement de la page, celle-ci se bloque sur la barre de chargement. Le seul moyen de contrer ça est de lui indiquer "lire" avec le clic droit.

Je suppose qu'il doit y avoir une solution miracle pour contrer ça, non ? Un écouteur "ENTER_FRAME" par exemple ?

Merci d'avance pour votre aide...

8 réponses

BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
27 janv. 2011 à 17:27
Hello,

sur quels ordis, quels systèmes, quels navigateurs, survient le problème ?
Qu'as-tu exactement dans ton animation Flash (le code) ?

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
floo75 Messages postés 6 Date d'inscription jeudi 6 mai 2010 Statut Membre Dernière intervention 26 août 2011
27 janv. 2011 à 17:52
Salut et merci de t'intéresser à mon problème

J'ai eu ce problème avec :
ie 9 (comme d'hab) et firefox (moins habituel) sur
un xp et un os-x leopard

Pour le fichier il y a :
Frame 1 : barre de chargement
stop();

function progressListener(e:ProgressEvent):void {
var charger:Number = e.bytesLoaded / e.bytesTotal;
var pourcent:int = charger* 100;

loading_Bar.scaleX = charger;
}

function completeListener(e:Event):void {
loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressListener);
loaderInfo.removeEventListener(Event.COMPLETE, completeListener);
gotoAndPlay("titre");
}

loaderInfo.addEventListener(ProgressEvent.PROGRESS, progressListener);
loaderInfo.addEventListener(Event.COMPLETE, completeListener);


Frame 2: quelques infos + chargement d'une image externe
var aCharger:Loader;
aCharger= new Loader() ;
var laVignette:PhotoClp=new PhotoClp();
aCharger.load(new URLRequest("image1.JPG"));

laVignette.x = 0;
laVignette.y = 157;
laVignette.width = stage.width*0.06;
laVignette.height = stage.height*0.06;

laVignette.addChild(aCharger);
addChild(laVignette);
trace(laVignette.width, laVignette.height, laVignette.x, laVignette.y);		


Frame 4 : Des liens externes précédé d'un stop(); par exemple :

facebook.addEventListener(MouseEvent.CLICK,goImage6);
function goImage6(event:MouseEvent){
     getURLAS3("http://www.facebook.com/#!/group.php?gid=191448754530&ref=ts");

//etc et tout en bas

function getURLAS3(url, page="_self") {
navigateToURL(new URLRequest(url), '_self');
}

}


Rien de bien méchant a priori donc mais... ça bug !
0
floo75 Messages postés 6 Date d'inscription jeudi 6 mai 2010 Statut Membre Dernière intervention 26 août 2011
27 janv. 2011 à 17:55
Ca vient peut-être du stop(); du début de la barre de chargement, maintenant que j'y pense, non ?
0
floo75 Messages postés 6 Date d'inscription jeudi 6 mai 2010 Statut Membre Dernière intervention 26 août 2011
29 janv. 2011 à 01:12
J'imagine que tu n'as pas eu le temps de regarder mon problème... J'ai continué de chercher de mon côté mais je ne trouve toujours pas. Une idée ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BBFUNK01 Messages postés 1310 Date d'inscription jeudi 16 juillet 2009 Statut Membre Dernière intervention 20 juin 2014 6
29 janv. 2011 à 11:27
Hello,

à vrai dire je ne vois pas vraiment... J'ai eu le même genre de problème dans des pages (en HTML5) dans lesquelles j'avais intégré des swf en mode transparent -> une fois chargée les pages affichaient tout correctement, mais lorsque je rafraîchissais les pages mes swf devenaient invisibles. Ces problèmes survenaient exclusivement sur safari 4, en passant sur safari 5 ça a réglé le problème.
Donc je dirais que suivant l'intégration de ton swf -> mode window ou transparent, il faut regarder ce que ça donne.
Ensuite peut-être aussi mettre ta progressBar dans un autre swf -> tu charges le swf qui contient ta progressBar dans ta page HTML, et ensuite ce swf charge le swf qui contient ton animation.
Sinon si ce n'est pas le cas : intégrer ton swf dans ta page HTML avec SWFObject.

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
0
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
31 janv. 2011 à 11:11
Ola,

ca viens de ton code, lorsque tu fais un F5 (refrech navigateur), selon le navigateur ou encore la version du player en jeu, l'evenement "complete" est mal propagé.

remplace dans ton code :
function completeListener(e:Event=null):void {
    if (e) {
        loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressListener);
        loaderInfo.removeEventListener(Event.COMPLETE, completeListener);
    }
    gotoAndPlay("titre");
}


et tout en bas après l'ajout des écouteurs sur loaderInfo :

if (loaderInfo.bytesLoaded >= loaderInfo.bytesTotal) completeListener();


et ca devrait marcher ;)
++

Ben
Amalgam Production - Développement Web Flash PHP MySQL - Identité visuel et audiovisuel.
0
floo75 Messages postés 6 Date d'inscription jeudi 6 mai 2010 Statut Membre Dernière intervention 26 août 2011
31 janv. 2011 à 15:18
Salut !

@BBFUNK01 : j'ai essayé les deux méthodes, rien à faire...

@_benjy : C'est une bonne idée de passer par là, le problème est que du coup j'ai une erreur "nombre d'arguments incorrect. 1 attendu". Il n'a pas l'air de comprendre ce sur quoi il faut qu'il travaille...

Merci à tous les deux de m'aider en tous cas !
0
_benjy Messages postés 1575 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 21 février 2011 2
31 janv. 2011 à 16:53
MDR, ben l'erreur "nb d'argument incorrect" vient du fait que tu n'as pas modifié la fonction "completeListener" comme je te l'ai indiqué
j'ai ajouté un "=null" à la suite de "e", l'argument d'entrée de ta fonction.
"param=value" en guise d'argument permet de donner une valeur par défaut à ton paramètre.
tu peux aisi appeler ta fonction par "maFonction(monArguement);" que par "maFonction();" vue que le paramètre est de venu facultatif, you see ;)
allé en le corrigeant tu verras que ca marche (ou sinon c'est une autre erreur ailleurs ...)
++

Ben
Amalgam Production - Développement Web Flash PHP MySQL - Identité visuel et audiovisuel.
0
Rejoignez-nous