Le DOM signifie Document Object Model. Il s'agit d'une cartographie de la page HTML (I.E l'ensemble des balises, leur propriétés leur contenu)
Ce qui signifie que si je créé une liste <ul> le DOM me donnera accès à un objet ul pour le manipuler
Si j'ajoute un list item à cette liste j'aurais ce model
Si j'ajoute un lien à ce list item j'aurais ce model
Pour être plus précis ce sera ce model
Pour récupérer un composant de votre page, il faut utiliser la classe document. Il s'agit de l'interface qui represente la page web une fois chargée sur la navigateur et sert de point d'accès pour tout les composants de la page.
Dans cet exemple nous avons récupérer un élément dont l'attribut ID correspond à "ma
il existe un certain nombre de méthodes permettant de récupérer les composants de différentes manières
| méthode | définition |
|---|---|
| getElementById | récupérer un élément via son ID <div ID="madiv"> |
| getElementsByTagName | récupérer les éléments via le nom de leur balise
document.getElementByTagName("a"); // récupère toutes les balises </a>
|
| getElementsByclassName | récupérer les éléments appartenant à la même classe
document.getElementByClassName("menu"); // récupère les élément ayant une classe ".menu"
|
| getElementsName | récupérer les éléments ayant le même attribut name
document.getElementsName("test");
|
| querySelector | récupérer un élément grâce à son sélecteur CSS
document.querySelector("#madiv"); // équivaut à document.getElementById("madiv");
|
| querySelectorAll | récupérer l'ensemble élément grâce à au sélecteur CSS
document.querySelectorAll(".menu"); // équivaut à document.getElementByClassName("menu");
|
Pour manipuler les composants du D.O.M, il suffit de modifier certaine de leur propriété
Par exemple afficher le nom saisi dans une balise <div/>
Par exemple afficher en gras l'ensemble des éléments issus de la même classe
Il est possible de créer des composant dynamiquement sur la page. Pour ce faire, on utilise la méthode createElement appendChild pour les associer les uns aux autres
Par exemple créer une boîte de dialogue