Appel d'une fonction au chargement d'une DIV ? [Résolu]

Messages postés
216
Date d'inscription
mardi 5 avril 2005
Dernière intervention
17 septembre 2008
- - Dernière réponse : sphaxslayer
Messages postés
216
Date d'inscription
mardi 5 avril 2005
Dernière intervention
17 septembre 2008
- 17 sept. 2008 à 18:50
Bonjour tout le monde,

voilà je me tourne vers vous car j'ai un petit souci qui, j'en suis sûr, sera de la broutille pour vous... En fait, je suis (bêtement) entrain d'essayer de faire se déclencher une fonction lors du chargement d'une div dans ma page...

Mon problème est que je ne sais pas comment feinter le fait que pour y attacher un événement (le 'load', puisque je ne souhaite aucune intervention de la part de l'utilisateur, il faut que cela soit automatique...), j'ai besoin de son id. Seulement voilà, si le document.getElementById fonctionne, c'est que l'événement "load" est déjà terminé, il me semble...

J'avais pensé à attacher un événement sur le document.load ou le window.load, qui si j'ai bien saisi, intervient lorsque toute la page est chargée, mais ça ne semble pas fonctionner...

Je précise que l'inclusion de mon fichier JS est faite après ma div dans le fichier HTML... mais bon...

En somme, voilà ce que j'ai fait sans succès :
-------------------
function start( ) {
   var myBlock = document.getElementById('myBlock');
   alert('started!');
}

document.addEventListener('load', start, false); // essayé avec window également...
------------------

le alert() n'apparait pas... aurais-je manqué quelque chose, un ordre de processus que je ne respecte pas..? Merci d'avance !

"Un seul Être vous manque, et tout est dépeuplé..."
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Dernière intervention
15 octobre 2013
3
Merci
l'id d'un élément est valable juste derrière l'avoir défini.

document.getElementById("toto") ça plante

document.getElementById("toto") ça baigne

mais onload n'existe pas pour un div.
soit tu le charges avec ajax, et là tu sais qu'il est chargé
       dès que tu y met la réponse d'ajax
soit c'est du html qui est dans ce div, et donc tout est accessible
      après la définition.
soit ce sont des images, elles sont accessibles mais peut-être pas encore affichées....
       regarde image.complete

finalement un window.onload=function() { la page est totalement accessible }
                suffirait peut-être.....
            
Cordialement        Bul   [mon Site] [M'écrire], <!--

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 97 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_bultez
Messages postés
216
Date d'inscription
mardi 5 avril 2005
Dernière intervention
17 septembre 2008
0
Merci
Salut et merci de ta réponse.

Donc d'après toi, si je colle un window.onload = start(), où dans le start() je travaille sur ma DIV, ça devrait passer ?

Là comme ça, ça me parait pas impossible, mais je n'ai ni le code sous les yeux, ni le tout en tête... je jetterai un oeil ce soir éventuellement demain, mais ça me parait intéressant...

...quant à l'événement 'load' d'un div, j'en n'étais pas sûr, je le suis maintenant, ton post m'aura au moins enrichi de cela, si jamais ça ne m'aide pas plus ensuite :D

To be continued...

"Un seul Être vous manque, et tout est dépeuplé..."
Commenter la réponse de sphaxslayer
Messages postés
216
Date d'inscription
mardi 5 avril 2005
Dernière intervention
17 septembre 2008
0
Merci
Rebonsoir,

alors en fait ça a fonctionné, merci bien !

j'ai placé l'inclusion de mon fichier javascript après le chargement de ma DIV dans le html, et j'ai ajouté l'appel de la fonction au chargement de l'élément window.

Merci encore ! :)

"Un seul Être vous manque, et tout est dépeuplé..."
Commenter la réponse de sphaxslayer

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.