Domanda

Sto cercando di creare un nuovo elemento nel mio codice javascript e aggiungerlo a uno dei miei elementi. Ma sembra che i vecchi browser IE non supportino questa funzione e il mio codice si interrompe sulla linea in cui utilizzo la funzione appendChild.

var child = document.createElement('span');
child.innerHTML = "Hello World!"; // Crashes here
parent.appendChild(child); // And here

Esistono alternative che posso usare per IE?

Grazie.

P.S il codice funziona bene nei browser moderni.

UPD: Il codice seguente risolve l'ultima parte del mio problema, posso aggiungere un figlio vuoto a un genitore:

var child = document.createElement('span');
if (parent.insertAdjacentElement){
   parent.insertAdjacentElement('beforeEnd', child);
}
else if (parent.appendChild) {
   parent.appendChild(child);
}

Ma devo ancora inserire alcuni dati all'interno dell'elemento figlio. createTextNode , innerHTML , setAttributes non funzionano.

È stato utile?

Soluzione

Potrebbe non essere correlato, ma controlla questo link per sapere qualcun altro ha risolto questo problema

Modifica: e questo link troppo

Altri suggerimenti

Mi sembra che si blocchi sulla seconda riga. innerHTML è scritto con una i minuscola, non maiuscola. Potrebbe anche essere la tua prima riga in quanto c'è un errore di battitura, ma presumo che sia solo nella domanda.

Questo risolve il problema?

var child = document.createElement('span');
child.appendChild(document.createTextNode("Hello World!"));
parent.appendChild(child);

parent.innerHTML sembra funzionare bene.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top