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

sphaxslayer 216 Messages postés mardi 5 avril 2005Date d'inscription 17 septembre 2008 Dernière intervention - 17 sept. 2008 à 16:59 - Dernière réponse : sphaxslayer 216 Messages postés mardi 5 avril 2005Date d'inscription 17 septembre 2008 Dernière intervention
- 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 

3 réponses

Répondre au sujet
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 17 sept. 2008 à 17:35
+3
Utile
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], <!--
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_bultez
sphaxslayer 216 Messages postés mardi 5 avril 2005Date d'inscription 17 septembre 2008 Dernière intervention - 17 sept. 2008 à 17:50
0
Utile
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
sphaxslayer 216 Messages postés mardi 5 avril 2005Date d'inscription 17 septembre 2008 Dernière intervention - 17 sept. 2008 à 18:50
0
Utile
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.