web:js:dom

Ceci est une ancienne révision du document !


Javascript - DOM

Le DOM, Document Object Model correspond à la l'ensemble des objets définis de manière arborescente générés par le navigateur par l'interprétation d'un document HTML.

Le DOM fourni une API permettant sa manipulation, à partir de Javascript.

Les éléments du DOM sont des objets, disposant de propriétés, de méthodes et peuvent être associés à des évènements.

La variable document est l'objet racine généré par un document HTML. Elle permet d'accéder à l'ensemble des objets instanciés dans une page.

Exemple d'accès à un élément par son id,
et modification de son contenu grace à la propriété innerHTML :

<html>
<body>
    <p id="demo"></p>
    <script>
    document.getElementById('demo').innerHTML = 'Hello World!';
    </script>
</body>
</html>

La propriété innerHTML est accessible sur tous les éléments d'une page (y compris son body), et permet d'affecter un contenu HTML à l'élément.

Un id est unique dans une page Web : le meilleur moyen d'accéder à un élément précis de la page est de le faire par son id :

Accès à l'élément d'id intro :

const element=document.getElementById('intro');

<h1>Introduction</h1>
<div id="intro">
    <p>Lorem ipsum</p>
</div>
<p>Lorem ipsum</p>

Le tagName correspond au type d'un élément défini par sa balise ouvrante (p, div, a, span…).

Recherche des éléments de type p :

const elements=document.getElementsByTagName('p');

<h1>Introduction</h1>
<div id="intro">
    <p>Lorem ipsum</p>
</div>
<p>Lorem ipsum</p>

La classe CSS permet bien évidemment d'attribuer des styles CSS, mais offre également la possibilité de sélectionner des éléments.

Recherche des éléments de la classe myClass :

const elements=document.getElementsByClassName('myClass');

<h1>Introduction</h1>
<div id="intro" class="myClass">
    <p>Lorem ipsum</p>
</div>
<p class="para myClass">Lorem ipsum</p>

Les sélecteurs CSS permettent également de sélectionner des éléments.

Recherche des éléments de type p contenus dans un élément de classe myClass :

const elements=document.querySelectorAll('.myClass p');

querySelectorAll() retourne la collection d'éléments sélectionnés, tandis que querySelector() retourne le premier élément correspondant.

<h1>Introduction</h1>
<div id="intro" class="myClass">
    <p>Lorem ipsum</p>
</div>
<p class="para myClass">Lorem ipsum</p>

  • web/js/dom.1680181894.txt.gz
  • Dernière modification : il y a 3 ans
  • de jcheron