appendChild dans les anciens navigateurs IE
-
06-07-2019 - |
Question
J'essaie de créer un nouvel élément dans mon code javascript et de l'ajouter à l'un de mes éléments. Mais il semble que les anciens navigateurs IE ne supportent pas cette fonction et que mon code se casse sur la ligne où j’utilise la fonction appendChild.
var child = document.createElement('span');
child.innerHTML = "Hello World!"; // Crashes here
parent.appendChild(child); // And here
Existe-t-il des alternatives que je peux utiliser pour IE?
Merci.
P.S le code fonctionne bien dans les navigateurs modernes.
UPD: Le code suivant résout la dernière partie de mon problème, je peux ajouter un enfant vide à un parent:
var child = document.createElement('span');
if (parent.insertAdjacentElement){
parent.insertAdjacentElement('beforeEnd', child);
}
else if (parent.appendChild) {
parent.appendChild(child);
}
Mais je dois quand même mettre des données à l'intérieur de l'élément enfant. createTextNode
, innerHTML
, setAttributes
ne fonctionne pas.
Autres conseils
On dirait que ça s'écrase sur la 2e ligne. innerHTML est écrit avec une minuscule i, pas une majuscule. Ce pourrait même être votre première ligne car il y a une faute de frappe, mais je suppose que c'est juste dans la question.
Cela résout-il le problème?
var child = document.createElement('span');
child.appendChild(document.createTextNode("Hello World!"));
parent.appendChild(child);
parent.innerHTML
semble fonctionner correctement.