--- title: Node.appendChild() slug: Web/API/Node/appendChild tags: - API - DOM - Node - Referenza - metodo translation_of: Web/API/Node/appendChild ---
Il metodo Node.appendChild()
aggiunge un nodo alla fine dell'elenco di figli di un nodo genitore specificato. Se il figlio dato è un riferimento a un nodo esistente nel documento, appendChild()
lo sposta dalla sua posizione corrente alla nuova posizione (non è necessario rimuovere il nodo dal suo nodo padre prima di aggiungerlo ad un altro nodo).
Ciò significa che un nodo non può essere in due punti del documento contemporaneamente. Quindi se il nodo ha già un genitore, il nodo viene prima rimosso, quindi aggiunto alla nuova posizione. Il metodo {{domxref("Node.cloneNode()")}} può essere usato per fare una copia del nodo prima di aggiungerlo sotto il nuovo genitore. Si noti che le copie eseguite con cloneNode
non verranno automaticamente mantenute sincronizzate.
Se il figlio dato è un {{domxref("DocumentFragment")}}, l'intero contenuto di {{domxref("DocumentFragment")}} viene spostato nell'elenco secondario del nodo genitore specificato.
element.appendChild(aChild);
Il valore restituito è il figlio aggiunto tranne quando il figlio dato è un {{domxref("DocumentFragment")}}, nel qual caso viene restituito il {{domxref("DocumentFragment")}}.
Il concatenamento potrebbe non funzionare come previsto a causa di appendChild()
che restituisce l'elemento figlio:
var aBlock = doc.createElement('block').appendChild(doc.createElement('b'));
Sets aBlock
to <b></b>
only, which is probably not what you want.
// Crea un nuovo elemento di paragrafo e aggiungilo alla fine del corpo del documento var p = document.createElement("p"); document.body.appendChild(p);
Specifica | Stato | Commento |
---|---|---|
{{SpecName('DOM WHATWG', '#dom-node-appendchild', 'Node.appendChild()')}} | {{Spec2('DOM WHATWG')}} | Nessun cambiamento da {{SpecName("DOM3 Core")}}. |
{{SpecName('DOM3 Core', 'core.html#ID-184E7107', 'Node.appendChild()')}} | {{Spec2('DOM3 Core')}} | Nessun cambiamento da {{SpecName("DOM2 Core")}}. |
{{SpecName('DOM2 Core', 'core.html#ID-184E7107', 'Node.appendChild()')}} | {{Spec2('DOM2 Core')}} | Nessun cambiamento da {{SpecName("DOM1")}}. |
{{SpecName('DOM1', 'level-one-core.html#ID-184E7107', 'Node.appendChild()')}} | {{Spec2('DOM1')}} | Definizione inziale. |
{{Compat("api.Node.appendChild")}}