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

AJAX Discussion :

[AJAX] Animation durant requête


Sujet :

AJAX

  1. #1
    Membre averti
    Inscrit en
    Janvier 2010
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 16
    Par défaut [AJAX] Animation durant requête
    Bonjour,

    j'ai une requête SQL qui prend environ 5 sec à s'afficher totalement.
    Comment afficher une animation par dessus (div) durant ce temps de chargement ?

    Merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonsoir,

    Adapte ce code à ton besoin
    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
    44
    45
    <html>
        <head>
            <title>Tutoriel Ajax (XHTML + JavaScript + XML)</title>
            <script type='text/JavaScript'>
     
                 function getXhr(){
                                    var xhr = null; 
                    if(window.XMLHttpRequest) // Firefox et autres
                       xhr = new XMLHttpRequest(); 
                    else if(window.ActiveXObject){ // Internet Explorer 
                       try {
                                xhr = new ActiveXObject("Msxml2.XMLHTTP");
                            } catch (e) {
                                xhr = new ActiveXObject("Microsoft.XMLHTTP");
                            }
                    }
                    else { // XMLHttpRequest non supporté par le navigateur 
                       alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
                       xhr = false; 
                    } 
                                    return xhr
                }
     
                function go(){
                    var xhr = getXhr()
                    // On défini ce qu'on va faire quand on aura la réponse
                    xhr.onreadystatechange = function(){
                        // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
                        if(xhr.readyState == 4 && xhr.status == 200){
                            document.getElementById('divResultatRequete').innerHTML=xhr.responseText;
                            document.getElementById('gifLoad').style.display="none";
                        }else{
                            document.getElementById('gifLoad').style.display="inline";
                        }
                    }
                    xhr.open("GET","ajax.php",true);
                    xhr.send(null);
                }
            </script>
        </head>
        <body onload="go()">
            <img src="tonGifAnime.gif" style="display:none" id="gifLoad"/>
            <div id="divResultatRequete"></div>        
        </body>
    </html>
    Le tutoriel est ici: Web 2.0, allez plus loin avec AJAX et XMLHttpRequest

    A+.

  3. #3
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Salut,

    Comme te le dis Andry, tu affiche une image (avec display:block par exemple) quand ta requête est en cours.

    Quand la requête est terminée et que tu reviens en js, tu cache l’image (display:none).

    C'est ce qui est le plus simple.

    En plus de cela, voici un lien qui contient des chouettes effets :

    http://www.ajaxload.info/#preview

    Courage

    beegees

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

Discussions similaires

  1. [MySQL] Animation durant requête
    Par artkap dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/10/2010, 12h44
  2. [AJAX] Annuler une requête asynchrone server side
    Par Matthieu Bissat dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/01/2007, 20h42
  3. [AJAX] [PHP] Lourde Requête INSERT, header ou ajax
    Par speedev dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 10/10/2006, 11h28
  4. [AJAX] Enchainer plusieurs requêtes avec Ajax
    Par Bobtop dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/08/2006, 08h13
  5. gif animé durant dialogue RS232
    Par chourmo dans le forum Composants VCL
    Réponses: 4
    Dernier message: 23/06/2005, 18h36

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