Bonjour,
J'ai cette petite fonction qui permet d'attacher un event à un élement créé dynamiquement par le DOM :
et on l'utilise de cette manière :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 registerEvent = function(on, ev, func, capture) { if (window.addEventListener) on.addEventListener(ev, func, capture); else { if (!on.funcsCounter) on.funcsCounter = 0; on['func'+on.funcsCounter] = func; on.funcsCounter++; on.attachEvent("on"+ev, function() { for(var i=0; i<on.funcsCounter; i++) on['func'+i](); }); } }
Pourquoi mon code ci-dessous pose problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 registerEvent(document.getElementById('myLink'), 'click', function() { this.style.color = '#f00'; this.style.fontWeight = 'bold'; });
Merci d'avance...
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 registerEvent = function(on, ev, func, capture) { if (window.addEventListener) on.addEventListener(ev, func, capture); else { if (!on.funcsCounter) on.funcsCounter = 0; on['func'+on.funcsCounter] = func; on.funcsCounter++; on.attachEvent("on"+ev, function() { for(var i=0; i<on.funcsCounter; i++) on['func'+i](); }); } } fillservices = function() { alert(this.value); } monInput = document.createElement("<input name='services'>"); monInput.type = "radio"; var monInputId = monInput.id = 'services'+items[i].getElementsByTagName('valeur')[0].firstChild.nodeValue; monInput.value = items[i].getElementsByTagName('valeur')[0].firstChild.nodeValue; document.body.appendChild(monInput); registerEvent(document.getElementById(monInputId), 'click', fillservices);
Partager