11550 sujets

JavaScript, DOM et API Web HTML5

Bonjour et bon Noël
Je suis en train de créer un "menu dynamique" en xhtml et javascript avec les méthodes du DOM (appendChild etc....)
Ainsi lorsque je sélectionne un lien du menu principal, l'exécute la séquence suivante (donnée ici en partie)

	var type = document.getElementById(elem);
        var ul_element = document.createElement("ul");
    	element = document.createElement("li");
  	var style = document.createAttribute("style");
 	element.setAttributeNode(style);
 	element.style.listStyleImage="url(p33.gif)";
 	element.setAttribute("onclick",MaFonction);			
	nouveau_texte = document.createTextNode(MonTexte);
  	element.appendChild(nouveau_texte);
  	ul_element.appendChild(element);
  				


La création des éléments de liste (li) se passe bien ; les puces sont bien stylisées avec une image. Par contre, je n'arrive pas à associer l'événement onclick à la balise <li>. Cet événement est associé à la balise <ul>

Quelqu'un(e) sait il pourquoi ? et surtout comment associer l'événement à la bonne balise ?
Merci et bonnes fêtes de fin d'année Smiley cligne
Modifié par coucou (26 Dec 2006 - 17:57)
coucou a écrit :
Bonjour et bon Noël
Je suis en train de créer un "menu dynamique" en xhtml et javascript avec les méthodes du DOM (appendChild etc....)
Ainsi lorsque je sélectionne un lien du menu principal, l'exécute la séquence suivante (donnée ici en partie)

	var type = document.getElementById(elem);
        var ul_element = document.createElement("ul");
    	element = document.createElement("li");
  	var style = document.createAttribute("style");
 	element.setAttributeNode(style);
 	element.style.listStyleImage="url(p33.gif)";
 	element.setAttribute("onclick",MaFonction);			
	nouveau_texte = document.createTextNode(MonTexte);
  	element.appendChild(nouveau_texte);
  	ul_element.appendChild(element);
  				


La création des éléments de liste (li) se passe bien ; les puces sont bien stylisées avec une image. Par contre, je n'arrive pas à associer l'événement onclick à la balise <li>. Cet événement est associé à la balise <ul>

Quelqu'un(e) sait il pourquoi ? et surtout comment associer l'événement à la bonne balise ?
Merci et bonnes fêtes de fin d'année Smiley cligne


onclick ne peut pas se positionner avec setAttribute.

Excuse moi mais... réveillon oblige, je ne peux passer plus de temps là-dessus. Cherche dans ce forum. Il y a plusieurs discussions sur le sujet dont une avec QuentinC qui justifie que l'on ne puisse pas faire ainsi et une autre avec Eldebaran... Et plein d'autres aussi.

L'idée est plutôt de faire : element.onmouseover=Mafonction;

Joyeux noël
Modifié par aCOSwt (24 Dec 2006 - 17:31)