Ik ben voor een klant bezig met een website, Een onderdeel daarvan is een treeview welke ik aan het uitwerken ben..
Deze treeview word dynamisch gegenereerd en geplaatst in het document; nu is het zo dat het in Firefox helemaal toppie werkt, maar Internet Explorer negeert alle onclick en onmouseover events die ik toegekent heb aan de verschillende nodes.
De relevante code is:
Als ik een direct na de div.appendChild, dan staat daar de onclick event wel gewoon in.
Mijn vragen zijn dus: waarom negeert IE deze events, en wat kan ik doen om er voor te zorgen dat hij het wél doet.
Deze treeview word dynamisch gegenereerd en geplaatst in het document; nu is het zo dat het in Firefox helemaal toppie werkt, maar Internet Explorer negeert alle onclick en onmouseover events die ik toegekent heb aan de verschillende nodes.
De relevante code is:
JavaScript:
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
| treeFncImage = document.createElement("IMG"); var cijfertje = Math.round((Math.random(0,14324)*100000)); var link = document.createElement("A"); link.setAttribute("href", "#"); link.setAttribute("id", 'link'+cijfertje); link.setAttribute("onmousemove", 'alert(this.id);'); if (items[i][5] && this.expanded == 0) { link.setAttribute("onclick", "Tree.act('"+cijfertje+"');"); expImage = 'plus.png'; } else if (items[i][5] && this.expanded == 1) { link.setAttribute("onclick", "Tree.act('"+cijfertje+"');"); expImage = 'min.png'; } else { expImage = 'blank.png'; } treeFncImage.src = '/lib/i/'+expImage; treeFncImage.alt = ''; treeFncImage.style.border = '0px'; link.appendChild(treeFncImage); div.appendChild(link); |
Als ik een
alert(link.outerHTML);
Mijn vragen zijn dus: waarom negeert IE deze events, en wat kan ik doen om er voor te zorgen dat hij het wél doet.