Le modèle d'objet de document (DOM) est un moyen de faire référence par programmation aux éléments d'un langage de balisage comme XML et HTML. À utiliser avec [javascript] ou tout autre langage de programmation doté d'un analyseur DOM

Qu'est-ce que le modèle d'objet de document?

La norme DOM actuelle se trouve sur https://dom.spec.whatwg.org/. Il s'agit d'une spécification complète pour le DOM et remplace toutes les spécifications DOM précédentes.

La spécification DOM2 héritée http://www.w3.org/TR/DOM-Level- 2-Core / introduction.htmldécrit le DOM dans les termes suivants:

Le Document Object Model (DOM) est une interface de programmation d'application (API) pour les documents HTML valides et XML bien formés. Il définit la structure logique des documents et la façon dont un document est accessible et manipulé. [...] Néanmoins, XML présente ces données sous forme de documents, et le DOM peut être utilisé pour gérer ces données.

En d'autres termes, le DOM n'est pas une chaîne, mais HTML / XML peut représenter le DOM sous forme de chaîne.

Dans un passé lointain, le DOM était limité dans les types d'éléments accessibles. Les éléments de formulaire, de lien et d'image peuvent être référencés avec un nom hiérarchique commençant par l'objet document racine. Un nom hiérarchique pourrait utiliser soit les noms, soit l'index séquentiel des éléments traversés. Par exemple, un élément d'entrée de formulaire peut être consulté en tant que document.formName.inputName ou document.forms[0].elements[0].

JavaScript contre le DOM

JavaScript est une langue que le navigateur lit et utilise. Mais le DOM est l'endroit où ces choses se produisent.

Quand le DOM est-il différent du HTML?

Voici une possibilité: il y a des erreurs dans votre code HTML et le navigateur les a corrigées pour vous. Supposons que vous ayez un élément <table> dans votre code HTML et omettez l'élément <tbody> requis. Le navigateur insérera simplement <tbody> pour vous. Il sera là dans le DOM, vous pourrez donc le trouver avec JavaScript et le styliser avec CSS, même s'il n'est pas dans votre HTML.


Niveau de vie DOM

Spécifications DOM obsolètes


Références utiles