appendChild en antiguos navegadores IE
-
06-07-2019 - |
Pregunta
Estoy intentando crear un nuevo Elemento en mi código javascript y agregarlo a uno de mis elementos. Pero parece que los navegadores IE antiguos no admiten esta función y mi código se rompe en la línea donde uso la función appendChild.
var child = document.createElement('span');
child.innerHTML = "Hello World!"; // Crashes here
parent.appendChild(child); // And here
¿Hay alguna alternativa que pueda usar para IE?
Gracias.
P.S el código funciona bien en los navegadores modernos.
UPD: El siguiente código resuelve la última parte de mi problema, puedo anexar un hijo vacío a un padre:
var child = document.createElement('span');
if (parent.insertAdjacentElement){
parent.insertAdjacentElement('beforeEnd', child);
}
else if (parent.appendChild) {
parent.appendChild(child);
}
Pero todavía necesito poner algunos datos dentro del elemento hijo. createTextNode
, innerHTML
, setAttributes
no funcionan.
Solución
Esto podría no estar relacionado, pero consulte este enlace para ver cómo alguien más ha resuelto este problema
Editar: y este enlace también
Otros consejos
Me parece que se está estrellando en la segunda línea. innerHTML está escrito con una i minúscula, no mayúscula. Incluso podría ser su primera línea, ya que hay un error tipográfico, pero supongo que eso es solo una cuestión.
¿Esto soluciona el problema?
var child = document.createElement('span');
child.appendChild(document.createTextNode("Hello World!"));
parent.appendChild(child);
parent.innerHTML
parece funcionar bien.