What is InsertAdjacent and InsertAdjacentHTML and how to use them ?

DOM - InsertAdjacent

About

InsertAdjacent is a function that permits:

  • to insert:
    • a node (insertAdjacent)
    • or html string (insertAdjacentHTML)
  • into the DOM tree
  • relatively to a node
  • at this positions (as a child or sibling)

Insert Adajcent Illustration

Example

Insert an element (insertAdjacentElement)

Demo:

let pSibling = document.createElement('p');
pSibling.innerText = 'A paragraph';
document.body.insertAdjacentElement('afterbegin', pSibling);
  • insertAdjacentElement is a advanced version of appendChild and therefore execute script node. Adding an hello world script.
let bodySibling = document.createElement('script');
bodySibling.text = 'console.log("Hello World !");';
document.body.insertAdjacentElement('beforeend', bodySibling);
  • Result:

Insert HTML directly (insertAdjacentHTML)

document.body.insertAdjacentHTML('afterend', '<p>Body Sibling HTML</p>');
  • Result:



insertAdjacentHTML is an advanced version of InnerHtml and therefore does not execute any script.

Syntax

element.insertAdjacentElement(position, siblingElement);
element.insertAdjacentHTML(position, text);

where position is:

  • beforebegin
  • afterbegin
  • beforeend
  • afterend
<!-- beforebegin -->
<element>
  <!-- afterbegin -->
  text
  <!-- beforeend -->
</element>
<!-- afterend -->

Security

insertAdjacentHTML is an advanced version of InnerHtml and therefore does not execute any script while insertAdjacentElement will execute them.





Discover More
What is the innerHTML property and how does it work ?

innerHTML is a property of a node element that permits to set the whole descendants of this node with an HTML fragment outerHTML HTML fragmentInsertAdjacentHTML script elements inserted using...



Share this page:
Follow us:
Task Runner