Bonjour,

je cherches à fabriquer en js une div qui me servira de menu sur un clic droit.
Mon point de départ est un fichier xml.

Situation de départ :
Dans mon fichier HTMl j'ai une balise div :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<div class="skin1" oncontextmenu="return false;" id="menuContext" onmouseout="hidemenu"></div>
Lorsque j'appuie sur un bouton, je vais chercher un fichier xml du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
<data>
   <MOTIF_ABSENCE id_ma="1" code_ma="CP" lib_ma="Congés payés"/>
   <MOTIF_ABSENCE id_ma="2" code_ma="DEJ" lib_ma="Pause déjeuner"/>
</data>
Je veux insérer dans ma div menuContext, une série de div+span pour chaque motif d'absence.

Voici ce que j'ai fait actuellement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
function ConstruireDivAbsence(xml) {
	var nodeList;
	var node;
	var i;
 
	var divContext;
 
	divContext = document.getElementById('menuContext');
 
	// Création premier élément
	var div = document.createElement("div");
	div.id="---ABS";
	div.className="menuitems";
	div.onclick="remplir(this.id)";
	div.onmouseover="highlight()";
	div.onmouseout="lowlight()";
 
	var span = document.createElement("span");
	span.className="menuspan";
	span.onmouseover="highlight()";
	span.onmouseout="lowlight()";
	span.innerHTML="&nbsp;";
 
	div.appendChild(span);
	divContext.appendChild(div);
 
	nodeList = xml.getElementsByTagName("MOTIF_ABSENCE");
	for (i=0;i<nodeList.length;i++) {
		node = nodeList(i);
		var div = document.createElement("div");
		div.id=node.getAttribute("code_ma");
		div.className="menuitems";
		div.onclick="remplir(this.id)";
		div.onmouseover="highlight()";
		div.onmouseout="lowlight()";
 
		var span = document.createElement("span");
		span.className="menuspan";
		span.onmouseover="highlight()";
		span.onmouseout="lowlight()";
		span.innerHTML=node.getAttribute("code_ma");
 
		div.appendChild(span);
		divContext.appendChild(div);
	}
}
Ma div semble bien générée puisque sur un clic droit elle s'affiche. Seulement, lorsque je passe sur un span, la fonction highlight n'est pas lancée.
Je ne comprends pas pourquoi

Auriez-vous une idée?

Merci d'avance