En tant qu'étudiant et quelqu'un d'assez nouveau au développement web, je rencontre le problème apparemment étrange suivant dans Javascript - mais seulement dans IE (IE9 pour être précis, n'ai pas encore essayé IE10) . Dans Firefox, le script fonctionne sans aucun problème.AppendChild (Javascript) et Internet Explorer
Le code est comme ceci:
item = document.createElement('li'); alert("alert1");
message = document.createTextNode("Hallo"); alert("alert2");
item.appendChild(message); alert("alert3");
Dans IE, alert1 et alert2 sont présentés, mais pas Alerte3. En d'autres termes, IE9 s'étouffe sur la troisième déclaration ci-dessus (appendChild), et n'atteint jamais alert3. Étrange en effet. En utilisant Google, j'ai constaté qu'il y avait des problèmes connus avec appendChild dans IE (au moins dans les versions antérieures). Mais aucun des problèmes décrits, ou les solutions suggérées, ne semblent correspondre à mon code simple, comme cité ci-dessus.
Merci d'avance pour toute suggestion. Modifier pour ajouter: La console affiche le message d'erreur suivant: "l'objet ne prend pas en charge la propriété ou la méthode appendChild".
IE est conçu pour rendre difficile et ennuyeux. Essayez plutôt de définir innerHTMLof li. – SHANK
Je ne peux pas reproduire le problème avec un simple violon (test dans IE9): http://jsfiddle.net/RnwPG/ – Ian
@Teemu Intéressant. Je m'attendais toujours à ce que la ligne 'item = docu ...' écrase tout ce que 'window.item' est – Ian