IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flash Discussion :

[FLASH 8] Mettre en Cache ? Preload qui se répete !


Sujet :

Flash

  1. #1
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut [FLASH 8] Mettre en Cache ? Preload qui se répete !
    Bonjour à tous,

    Voila, j'ai quelques problèmes qui commencent à me tapper sur le systeme. (lol).

    Voici un aperçu de la mise à jour de notre site que je viens d'effectuer :
    http://www.team-intense.net/accueil.html

    Tout d'abord, visitez le, le preload dure en général +/- 25 Secondes la premiere fois. Là n'est pas le problème, justement, je voulais que les visiteurs téléchargent d'abord toutes les images de fond de mon interface avant d'y arriver, afin que le site soit animé en même temps et que la cohérence soit présente.

    Mais le problème se situe à la 2ieme VISITE !!!!!

    Déja, lorsque l'on rentre à nouveau l'adresse du site : http://www.team-intense.net/accueil.html , on peut s'apercevoir que l'image d'accueil se RECHARGE une deuxieme fois, comme si elle ne l'avait pas été faite lors de la 1iere visite. (comme si elle avait disparu de la cache, des fichiers temporaires internet).

    Secondo, lorsque l'on avance, le preload se REMET à CHARGER les images ! Mais cette fois ci, PLUS VITE que la première fois. (Il prend environ 9 secondes à partir de la deuxieme fois.).

    Parfois, il lui arrive de charger INDEFINIMENT ... et on voit l'animation "Chargement en cours ..." défiler pendant des heures et elle ne s'arrête jamais.

    Alors, j'aimerais résoudre ce probleme de PRELOAD, soit en forcant le chargement des images en cache, soit par n'importe quel autre moyen, mais j'aimerais que le PRELOAD ne s'affiche PLUS (ou MAXIMUM 2 Secondes !) lors de la deuxieme visite, lorsque les images sont déja en Fichiers Temporaires Internet.

    Mon .FLA est dispo ici : http://www.webest.be/download/main.fla


    D'avance, MERCI !

  2. #2
    Membre habitué Avatar de bouchette63
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 257
    Points : 187
    Points
    187
    Par défaut
    Bonjour,

    Ben écoute, j'ai testé pour vérifier si ce que tu disais ce passer.
    Lors de ma seconde visite, la page d'accueil s'est affiché tout de suite et le chargement a duré 2 secondes, alors que la première fois c'était 25 secondes environ de chargement.

    Donc je ne vois pas où est le problème, peut-être que chez toi tu n'enregistre pas en cache ton site
    "Tout m'afflige, et me nuit, et conspire à me nuire" Racine

  3. #3
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Ah ????

    heuuuu

    Niveau code dans mon AS, c'est bon alors ?

  4. #4
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    salut,
    personnellement j'ai rien compris à ton .fla ???
    il est ou le preloader ?

  5. #5
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    J'ai oublié de mettre au moins 1 fichier supplémentaire pour comprendre tout le code ... désolé !

    Bon, il y a 4 images clés.

    Il y a 2 calques d'AS :

    AS CLIPS
    &
    AS

    En fait, je n'arrivais pas à faire comme tu m'avais conseillé (avec les MovieClipLoader, j'ai rien pigé ...).

    Alors j'ai procédé de cette manière :

    J'initialise une variable qui s'appelle COMPLETE à 0 (complete=0
    Ensuite, je charges toutes mes animations dans le calque et je leur met un ALPHA 0 : AS CLIPS.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ban.loadmovie("hautban.swf");
    ban._alpha=0;
    Alors, dans l'animation "hautban.swf / fla", j'ai mis un "STOP" sur la 1iere image clé et j'ai mis le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    stop();
    loadImage = function(url,target){
    	ecouteur = new Object();
    	ecouteur.onLoadError=function(target_mc:Object, errorCode:String){
    		trace("Error : "+errorCode);
    	}
    	ecouteur.onLoadStart =function(){
    		trace("Loading started");
    	}
    	mcl = new MovieClipLoader();
    	mcl.addListener(ecouteur);
    	mcl.loadClip(url,target);
    	return ecouteur;
    }
     
    bgloader=loadImage("images/hautmilieu_02.jpg",bg);
    bgloader.onLoadComplete = function(){
    		_root.completes= _root.completes+1;
    	}
    }
    Donc en gros, dès que l'IMAGE DE FOND de mon animation "hautban" est chargée, elle INCREMENTE la variable "complete" de +1.

    Dans mon main, la variable "complete" s'incrémente donc petit à petit, jusqu'a arriver à 7 qui est mon nombre d'animations à charger.
    Sur la 3ieme image clé de mon main, j'ai mis le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    if(completes == 7)
    {
    	play();
    	centre.play();
    	hg.play();
    	ban.ban2.play();
    	hd.play();
    	mg.play();
    	roster.play();
    	md.play();
    	trace("MAIN is Playing !");
    }
    else
    {
    	gotoAndPlay(2);
    }
    Donc en gros, tant que toutes les images de mes .SWF à charger ne sont pas chargées, on boucle et on attend que la valeur de complete soit égale à 7.
    A ce moment là, je lance un play(); à toutes les animations en même temps, en leur mettant leur valeur _alpha à 100.

    Voila mon raisonnement. Je vais mettre à disposition une de mes animation si tu n'as tjs pas compris.

  6. #6
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Voici un exemple de HAUTDROITE.FLA qui doit être chargé via le MAIN.FLA :

    http://www.webest.be/download/hautdroite.fla

    C'est le .FLA le + simple et lisible des 7 ...

    Merci d'avance.

  7. #7
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    Bonjour,

    En fait, je n'arrivais pas à faire comme tu m'avais conseillé (avec les MovieClipLoader, j'ai rien pigé ...).
    heu.... tu as tout les exemples nécessaires que la doc peut te donner.
    Jean Philippe t'a donné une piste à suivre sérieuse.

    D'autre part, sur le fonctionnemnet de ton fla loadé, c'est une erreur.

    Comment veux tu que ton swf qui est loadé déclare un écouteur si ce meme swf n'est pas chargé ?
    Illogique mon cher docteur !

    Bien à toi.

  8. #8
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Citation Envoyé par aorgerit
    Comment veux tu que ton swf qui est loadé déclare un écouteur si ce meme swf n'est pas chargé ?
    L'écouteur est déclaré dans le SWF principal (le main !). A partir du moment où il commence le préchargement des SWF dérivés (dont "hautban.swf", "hautdroite.swf", etc... font parties), l'écouteur est déja initialisé.

    Dans les SWF dérivés, tu peux constater qu'il ne fait que changer la valeur de l'écouteur déclaré dans le main.

    C'est très logique vu que ca fonctionne en local très très bien ainsi que lorsque je procède à la simulation.

    Mais je vais encore checker la doc, mais je n'ai pas vu d'exemple qui se rapproche du miens dans la doc. C'est pour cela que j'ai laissé tombé le MovieClipLoader.
    C'est PAS uniquement le clip que je veux précharger ... Le clip il fait 1ko. Mais dans le "sous-clip", je fais appelle à CLIP.LOADMOVIE("monimage.jpg"); , et c'est CETTE IMAGE précisément, à CET ENDROIT du "sous-clip" que je veux précharger.
    Je ne sais pas si tu me comprends ... ?

    Je m'exprime peut etre mal ...

  9. #9
    Membre averti Avatar de aorgerit
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    257
    Détails du profil
    Informations personnelles :
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 257
    Points : 301
    Points
    301
    Par défaut
    Bonjour,

    non j'ai compris, masi je trouve ta méthode un peu lourde cependant :

    C'est PAS uniquement le clip que je veux précharger ... Le clip il fait 1ko.
    si ton swf fait 1 ko, c'est un peu nunuche de le poser en séparé sur le serveur, je choisirais une méthode MovieClip.attachMovie plutot, ensuite je loaderais mon image dans le clip à ce moment.

    et ton code est bel et bien placé dans le swf chargé.
    Je centraliserais ma prog sur un seul fla ou bien as si j'étais toi.
    De plus ton clip il ne sert à rien à part se charger pusi charger une image externe, je ne vois pas du tout à quoi cela peut te servir en ce cas ( à part faire des appels inutiles vers le serveur.

    Méthode : déclarer un objet MC dans ton animation principale, la positionner en x et y et en profondeur ( new MovieClipLoader ), ensuite charger ton image dans cet objet, en lui ayant appliqué des écouteurs.

    Bien à toi.

  10. #10
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Oula oula

    hehe merci pour ta réponse.

    Je m'y perds un peu là ...

    Je vais essayer de trouver un petit exemple, car là j'ai un peu de mal à comprendre .

  11. #11
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Voila, j'ai refais une mise à jour en utilisant du MovieClipLoader.

    Preload - avec MovieClipLoader

  12. #12
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Je galère .... sérieusement


    Concernant ma façon de faire avec des clips externes, c'est pour utiliser la MEME plate-forme pour des sites différents avec design différents. Tout simplement.

  13. #13
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Voila, j'ai fais un petit schéma pour mieux comprendre ce que je fais :



    En gros cela donne :

    [ Main.SWF ]==== clip1.loadMovie("hautban.swf"); ===>[ hautban.SWF ]=== bg.loadMovie("hautban.jpg");

    Donc, ma question :

    Comment PRECHARGER l'image "hautban.jpg" (qui est chargée dans un clip vide de HAUTBAN.SWF) dans mon MAIN.SWF ?
    Il faut que je précharge TOUTES LES IMAGES de fond de TOUS MES CLIPS SECONDAIRES avant de commencer à jouer ces mêmes clips secondaires qui contiennent le réel contenu du site.

    Capiche ?



    [edit ] Est-ce que quelqu'un aurait un exemple de code à me fournir ? car la, j'ai essayé beaucoup de choses (pour ne pas dire tout :p lol ), et ca ne fonctionne jamais comme j'aimerais

  14. #14
    Membre émérite
    Avatar de jean philippe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 062
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 062
    Points : 2 313
    Points
    2 313
    Par défaut
    tu devrais prendre les problèmes dans l'ordre

  15. #15
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut

  16. #16
    Membre régulier
    Étudiant
    Inscrit en
    Janvier 2004
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2004
    Messages : 279
    Points : 106
    Points
    106
    Par défaut
    Je pense créer un nouveau thread pour rester dans le sujet.

Discussions similaires

  1. [FLASH MX] Mettre en gras dans ce code
    Par celina5880 dans le forum Flash
    Réponses: 6
    Dernier message: 15/01/2006, 15h16
  2. Réponses: 6
    Dernier message: 05/05/2005, 23h47
  3. Réponses: 6
    Dernier message: 14/12/2004, 02h47
  4. [FLASH MX2004] Mettre un calque invisible ?
    Par Ticoche dans le forum Flash
    Réponses: 6
    Dernier message: 19/11/2004, 15h23
  5. Réponses: 4
    Dernier message: 02/11/2004, 20h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo