che sto cercando di sostituire tutti i contenuti di un elemento con un frammento di documento:Sostituire contenuto degli elementi con frammento di documento javascript
var frag = document.createDocumentFragment()
Il frammento di documento è stato creato proprio bene. Nessun problema lì. Aggiungo elementi in modo corretto, senza problemi neanche lì. Posso aggiungerlo usando element.appendChild(frag)
. Funziona anche bene.
Sto provando a creare un metodo "sostituisci" simile all'HTML di jQuery. Non sono preoccupato per la compatibilità con i vecchi browser. Esiste una funzione magica per sostituire tutto il contenuto di un elemento?
ho cercato element.innerHTML = frag.cloneNode(true)
, (come da ogni 'sostituire l'elemento contenuti' wiki ho potuto trovare), che non funziona. Mi dà <div>[object DocumentFragment]</div>
.
No Biblioteche, per favore. Ciò significa che se si inserisce una soluzione jQuery come risposta, si otterrà downvoted. Non cercare di essere un coglione, ma succede OGNI tempo.
Grazie!
EDIT Per chiarezza, sto cercando una soluzione "magica", io so come rimuovere tutti gli elementi esistenti, uno alla volta e quindi accodare il mio frammento.
Solo curioso, perché l'avversione alle biblioteche? – Mikeb
Specifiche del progetto oltre il mio controllo. Inoltre, è divertente provare a fare cose "vecchia scuola". –
@pimvdb in sostanza, sì. Ma mi piacerebbe farlo in un colpo solo, per evitare il ridisegno della pagina (potrei innerHTML = "" quindi appendChild, ma questo è 2 ri-disegni). –