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.

¿Fue útil?

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top