--- title: Element.insertAdjacentElement() slug: Web/API/Element/insertAdjacentElement translation_of: Web/API/Element/insertAdjacentElement ---

{{APIRef("DOM")}}

El método insertAdjacentElement() inserta un elemento nodo dado en una posición dada con respecto al elemento sobre el que se invoca.

Sintaxis

elementoObjetivo.insertAdjacentElement(posición, elemento);

Parameters

posición
Un {{domxref("DOMString")}} representando la posición relativa al elementoObjetivo; debe ser una de las siguientes cadenas:
elemento
El elemento HTML a ser insertado.

Valor devuelto

El elemento insertado  o null, si la inserción falla.

Excepciones

Excepción Explicación
SyntaxError La posición especificada no tiene un valor reconocido.
TypeError El elemento especificado no es un elemento válido.

Visualización de los nombres de posición

<!-- beforebegin -->
<p>
  <!-- afterbegin -->
  foo
  <!-- beforeend -->
</p>
<!-- afterend -->
Nota: Las posiciones beforebegin y afterend sólo funcionan si el nodo está en un árbol y tiene un padre.

Ejemplo

beforeBtn.addEventListener('click', function() {
  var tempDiv = document.createElement('div');
  tempDiv.style.backgroundColor = randomColor();
  activeElem.insertAdjacentElement('beforebegin',tempDiv);
  setListener(tempDiv);
});

afterBtn.addEventListener('click', function() {
  var tempDiv = document.createElement('div');
  tempDiv.style.backgroundColor = randomColor();
  activeElem.insertAdjacentElement('afterend',tempDiv);
  setListener(tempDiv);
});

Mira nuestro insertAdjacentElement.html demo en Github (mira el código fuente también.) Aquí tenemos una  secuencia de elementos {{htmlelement("div")}} dentro de un contenedor. Cuando uno es clickeado, se torna en seleccionado y tu puedes presionar los botones Insert beforeInsert after para insertar nuevos divs antes o despues del elemento seleccionado usando insertAdjacentElement().

Especificaciones

Especificación Estado Comentario
{{SpecName('DOM WHATWG', '#dom-element-insertadjacentelement', 'insertAdjacentElement()')}} {{ Spec2('DOM WHATWG') }}

Compatibilidad con Navegadores

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

Mira también