Attendre la chargement complet de la page [Résolu]

Signaler
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour les gens :)
Voila j'ai un petit soucis tout simple, mais bien genant. J'ai trouvé d'ou vient le probleme, mais je ne sais pas trop comment le résoudre.

J'ai une fonction javascript dans le header de ma page qui remplace le contenu de ma div id="test" par "blabla"
Et dans ma page j'ai bien sur, une div id="test" :p

Le probleme, c'est que quand je charge ma page, il me dit que document.getElementById("test") n'a aucune fonction.

Normal ! La div n'est pas encore chargée.

Comment pourrais-je faire pour faire attendre que la page soit chargée avant de jouer avec le javascript ?

Merci de votre aide :)

7 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
    window.onload=function()   {   javascript exécuté lorsque la page est chargée... }

    du javascript... c'est aussi l'appel à des functions.....

    window.onload=function()   {    fnct1();
                                                    des ordres javascript "normaux";
                                                    fnct2(); ...
                                                    fnct???();
                                                    ce qu'on veut... quoi
                                                }

<hr />                Cordialement            Bul        
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,

    soit on met le traitement javascript "derriere" la balise en question
    soit on fait
          <script type= "text/javascript">
            window.onload=function()   {   javascript exécuté lorsque la page est chargée... }
          </script>
             n'importe ou entre et
    soit onload dans la balise body
    soit....

    la plus sûre ( ??? euh ? j'ai déjà eu des soucis avec certains navigateurs, sans comprendre
                             pourquoi, avec les autres manières de faire  !!  )
       étant window.onload =function()....
<hr />                Cordialement            Bul        
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
1
MErci pour ta réponse :)
Mais si je veux appeler plusieurs fonctions, comment je peux faire du coup ?
Je fait une fonction dispatch qui contiendrait toutes mes fonctions à appeler, tout le travail à faire, et je fait un
window.onload=dispatch (); ?

Où il existe une meilleure solution ?
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
>>Où il existe une meilleure solution 
   tu sais bien qu'il n'existe pas de "meilleure solution"....   ;o))
   parfois, il y a des solutions qui conviennent, qui plaisent mieux ....
   c'est vrai ausi en javascript

>>window.onload=dispatch (); ?
   window.onload=dispatch;
   sans ()...  ce qui veut dire sans passage de paramètres.....

   l'appel "générique" ( euh ?? )
   c'est : window.onload=function()   { ... }
   donc, pourquoi pas window.onload=function()   { dispatch();  }
            par exemple !

<hr />
                Cordialement            Bul        
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
window.onload=function()   { ...  }
j'entend surtout que ça fonctionnera partout, en toutes circonstances... peut-être...
<hr />                Cordialement            Bul        
Messages postés
1123
Date d'inscription
mardi 8 janvier 2002
Statut
Modérateur
Dernière intervention
21 avril 2009
1
Ouep finalement j'ai fait comme ca :

window.onload = function () {
   mesfunctions (ici);
}

Merci bien de ton aide ! :)
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
il vous en prie.
<hr />                Cordialement            Bul