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

JavaScript Discussion :

Vérification du chargement d'une image


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Vérification du chargement d'une image
    Bonjour! je suis encore débutant en javascript et je me trouve devant un petit problème qui aura au moins eu le mérite de me faire réfléchir.

    Mon but est d'afficher un petit gif animé pendant le chargement d'une page. naturellement j'ai pensé a une boucle pour vérifier en continu si l'image était chargée seuleument la boucle devient infinie...

    Cela donnait à peu près ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    While ( !MonImage.complete )
       {
            if ( MonImage.complete )
              {
                  break;
               }
       }
    Bien évidemment je vois qu'il y a un truc qui va pas mais je suis completement perdu.


    donc en désespor de cause, je me suis penché sur un "bidouillage" pour remplacer cette boucle. Voila le script complet (au apssage s'il ya des énormités merci de m'en faire part cela ne pourra que m'être bénéfique!).

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    function pop (param) {
     
     
    	div = document.getElementById('imgGalerie');
     
    	if (div.hasChildNodes() ) //on vide la div si il y a deja du contenu
    		{
    			div.removeChild(div.lastChild);
    		}
     
     
    	//création de l'image
    	param2 = param;
    	Nimg = document.createElement('img');
    	var src = param.alt;
    	var W1 = param.width;
    	var H1 = param.height;
     
     
    	Nimg.setAttribute("src", "../images/galerie/grandes/" +src+ ".jpg");
    	Nimg.setAttribute("onclick", "window.open(this.src, 'Galerie', 'location=no'); return false;");
     
    if (Nimg.complete) // si le chargement est fini, on affiche l'image en réduisant sa taille
    	{
    	var W = Nimg.width/2;
    	var H = Nimg.height/2;
     
    	Nimg.setAttribute('width', W);
    	Nimg.setAttribute('height', H);
     
    	div.appendChild(Nimg); 
    	}
    else {  //sinon on fait apparaitre le loader
    	div.innerHTML='<img src="../ui/images/loader.gif" alt="" />';
    	setTimeout('verif()', 100); //et on lance un eptit décompte pour relancer la vérification
    	}
    }
     
    function verif() {
     
    	pop(param2); //on relance juste la fonction précédente
     
    }

    Je trouve que relancer la fonction comme ça fait "sale" même si ca marche au poil.

    Merci d'avance!

  2. #2
    Membre averti
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Points : 374
    Points
    374
    Par défaut
    Yo,

    Il te suffit d'utiliser new Image(); et son event handler .onload.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Merci pour ta réponse après quelques recherches supplémentaire sur le Image() j'ai trouvé mon bonheur!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Chargement d'une image avec evc4.0
    Par gids01 dans le forum MFC
    Réponses: 1
    Dernier message: 14/11/2005, 20h39
  2. Chargement d'une image
    Par gids01 dans le forum MFC
    Réponses: 1
    Dernier message: 31/10/2005, 14h27
  3. Réponses: 2
    Dernier message: 02/09/2005, 20h47
  4. Vitesse de chargement d'une image jpg ?
    Par ybruant dans le forum Langage
    Réponses: 6
    Dernier message: 16/11/2004, 20h42
  5. [debutant]Chargement d'une image de mes documents
    Par reineville dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/03/2004, 09h52

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