--- title: Element.insertAdjacentHTML() slug: Web/API/Element/insertAdjacentHTML tags: - API - Cambiare il DOM - DOM - Element - HTML - Inserire elementi - Inserire nodi - Referenza - insertAdjacentHTML - metodo translation_of: Web/API/Element/insertAdjacentHTML ---
{{APIRef("DOM")}}

Il metodo insertAdjacentHTML() dell'interfaccia {{domxref("Element")}} analizza il testo specificato come HTML o XML e inserisce i nodi risultanti nell'albero DOM in una posizione specificata. Non esegue il reparse dell'elemento su cui viene utilizzato, e quindi non corrompe gli elementi esistenti all'interno di quell'elemento. Questo evita il passaggio extra della serializzazione, rendendolo molto più veloce della manipolazione diretta di {{domxref("Element.innerHTML", "innerHTML")}}.

Sintassi

element.insertAdjacentHTML(position, text);

Parametri

position
Una {{domxref("DOMString")}} che rappresenta la posizione relativa ad element; deve essere una delle seguenti stringhe:
text
La stringa da analizzare come HTML o XML e inserita nell'albero.

Visualizzazione dei nomi delle posizioni

<!-- beforebegin -->
<p>
  <!-- afterbegin -->
  foo
  <!-- beforeend -->
</p>
<!-- afterend -->
Note: Le posizioni beforebeginafterend funzionano solo se il nodo si trova nell'albero del DOM e ha un elemento padre.

Esempio

// <div id="one">one</div>
var d1 = document.getElementById('one');
d1.insertAdjacentHTML('afterend', '<div id="two">two</div>');

// A questo punto, la nuova struttura è:
// <div id="one">one</div><div id="two">two</div>

Note

Considerazioni sulla sicurezza

Quando si inserisce HTML in una pagina utilizzando insertAdjacentHTML(), fare attenzione a non utilizzare l'input dell'utente che non è stato analizzato.

Non è consigliabile utilizzare  insertAdjacentHTML() quando si inserisce testo normale; usa invece la proprietà {{domxref("Node.textContent")}} o il metodo {{domxref("Element.insertAdjacentText()")}}. Questo non interpreta il contenuto passato come HTML, ma invece lo inserisce come testo non elaborato.

Specifiche

Specifica Stato Commento
{{SpecName('DOM Parsing', '#widl-Element-insertAdjacentHTML-void-DOMString-position-DOMString-text', 'Element.insertAdjacentHTML()')}} {{ Spec2('DOM Parsing') }}  

Compatibilità con i browser

{{Compat("api.Element.insertAdjacentHTML")}}

Vedi anche