Il arrive qu'il soit nécessaire d'insérer ou de modifier le contenu d'un élément dans une page ou plus précisément dans le DOM. Heureusement, JavaScript offre plusieurs fonctions permettant d'y arriver.

Afin de démontrer les différentes options, un élément avec la classe .element et le texte 1 sera utilisé dans l'ensemble des exemples suivants.

<div class="element">1</div>

InnerText

La fonction innerText permet de récupérer ou de définir le contenu texte d'un élément.

Récupérer

Par exemple, pour récupérer le contenu texte de l'élément .element, il est possible de faire:

console.log(element.innerText); // 1

Définir

Si une valeur lui est attribuée, le texte existant est remplacé.

Par exemple, dans le code ci-dessous 👇 le contenu texte 1 est remplacé par le chiffre 2;

InnerHTML

Similaire à innerText, la fonction innerHTML permet de récupérer ou de définir le contenu HTML d'un élément.

Récupérer

Par exemple, pour récupérer le contenu HTML de .element, il est possible de faire:

console.log(element.innerHTML); // 1

Si une balise HTML avait été présente à l'intérieur de .element, par exemple une balise span enrobant le chiffre 1, la fonction retournerait plutôt <span>1</span>.

Définir

Si contenu HTML est attribué à innerHTML, le contenu HTML existant est remplacé par le nouveau.

Par exemple, dans le code ci-dessous 👇 le contenu texte 1 est remplacé par <em>2</em>, ce qui nous donne le chiffre 2 en italique.

insertAdjacentText()

Contrairement à innerText, la fonction insertAdjacentText permet d'insérer un contenu texte à une position précise dans un élément, sans effacé le contenu original.

Soit:

  • beforebegin avant l'élément

  • afterbegin au début de l'élément

  • beforeend à la fin de l'élément

  • afterend après l'élément

beforebegin

afterbegin

insertAdjacentHTML()

Similaire à insertAdjacentText, la fonction insertAdjacentHTML permet d'insérer un contenu HTML à une position précise dans un élément, sans effacé son contenu original.

Soit:

  • beforebegin avant l'élément

  • afterbegin au début de l'élément

  • beforeend à la fin de l'élément

  • afterend après l'élément

beforeend

afterend