ajout un evenement dans un doc html avec DOM

ajout un evenement dans un doc html avec DOM - HTML/CSS - Programmation

Marsh Posté le 04-06-2002 à 10:01:57    

SAlut
 
j'aimerais rajouter un onclick sur un image mais de façon dynamique (en même temps que la création de mon image)..
 
J'ai vu qu'il etait possible d'ajouter des evenements :
genre monNoeud.addEvent("onclick","texte" )...
mais je ne retrouve plus la doc la dessus...
 
Des liens ou juste la syntaxe de la methode me rendrait service!!

Reply

Marsh Posté le 04-06-2002 à 10:01:57   

Reply

Marsh Posté le 04-06-2002 à 11:33:39    

bon je viens de trouver la methode attachEvent qui mache plutot bien!!

Reply

Marsh Posté le 04-06-2002 à 21:57:03    

oui mais cette methode me permet d'appeller une fonction ou plutot un pointeur, et donc pas de parametre...
n'est il pas possible d'ajouter un evenement qui fait appel à une fonction avec des parametres!!!
 
please help...
 
merci...

Reply

Marsh Posté le 04-06-2002 à 22:22:36    

:??: c'est le navigateur qui appelle ta fonction, comment veux-tu qu'il te passe des paramètres ?

Reply

Marsh Posté le 04-06-2002 à 22:37:36    

bon je viens de trouver une solution :
dans mon code je l'appel comme ça:
document.getElementById("maligne" ).attachEvent("onclick",mafonction)
Au prealable je defini des propriété bidon mais qui me servent
document.getElementById("maligne" ).setAttribu
te("prix",mavaleur)
document.getElementById("maligne" ).setAttribute(
"id",idLinge)

 
 
 
event.scrElement.getAttribute("id" )....
et ainsi je recupere l'id qui est à l'origine du click...
 
Mais je comprend pas meme si c'est la navigateur qui appel la fonction etant donnée que c'est moi qui lui indique la fonction à appeller pourquoi je pourrais pas lui passer des parametres!!
 
Genre pourquoi ça marche pas
document.getElementById("maligne" ).attachEven
t("onclick",mafonction('moi';)

 
:?

Reply

Marsh Posté le 04-06-2002 à 22:44:43    

grosmethos a écrit a écrit :

Mais je comprend pas meme si c'est la navigateur qui appel la fonction etant donnée que c'est moi qui lui indique la fonction à appeller pourquoi je pourrais pas lui passer des parametres!!


parce que tu dois lui passer un pointeur et non pas un bout de code à éxécuter (eg comme setTimeout.)
 
dans ton exemple :
 
document.getElementById("maligne" ).attachEvent ("onclick", mafonction('moi';))
 
le "mafonction('moi';)" _appelle_ la fonction mafonction avec 'moi' en paramètre et essaye de stocker le résultat dans le pointeur onclick.
 
tu peux contourner le problème en passant par une fonction anonyme :
 
<script>
  // ta fonction qui veut absolument un paramètre
  function alertMe(str)
  {
    alert(str);
  }
</script>
 
document.getElementById('myNode';).onclick = function () { alertMe('hello';); }


Message édité par youdontcare le 06-04-2002 à 22:45:24
Reply

Marsh Posté le 04-06-2002 à 22:51:08    

ok pour la fonction annonyme...(je note :)  )
et si non
que penses des proprietés bidons...ça à l'air aussi bien non??

Reply

Marsh Posté le 04-06-2002 à 22:55:08    

grosmethos a écrit a écrit :

et si non que penses des proprietés bidons...ça à l'air aussi bien non??


j'en pense que du bien :D  
 
ça dépend de ce que tu veux faire, si tu as besoin de ces propriétés pendant toute la durée de vie de ta balise ou juste pour éxécuter une fonction ...

Reply

Marsh Posté le 04-06-2002 à 22:57:43    

bon va pour les propriétés....je m'en sert sur deux appels differents.....
 
Bon merci :bounce:  
.........................encore une fois :)
 
@+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed