Tout ce qu'Auteur a dit est vrai. Ce n'est pas recommandé. Il n'a pas utilisé le mot "interdit".
Donc, dans ta logique, si j'ai tu as l'élément audio suivant dans ton code :
<audio id="audio1" preload="auto"></audio>
Tu y accèdes ainsi en javascript ?
var Audio = document.getElementById('audio1');
Et bien ce n'est pas recommandé car si tu as besoin de faire un new Audio(); plus loin, cela génère une erreur. Exemple :
1 2 3 4 5 6 7
| var a = new Audio();
console.log(a); //on a bien un [object HTMLAudioElement]
// Plus loin, tu décides, par exemple, de récupérer ton élément audio1
var Audio = document.getElementById('audio1');
// Audio
var a = new Audio(); // Erreur !! "Exception: Audio is not a function" dans Firefox |
Ça marche aussi pour option, object qui sont à la fois des balises HTML et des objets natifs à Javascript mais que l'on peut écraser par inadvertance ou si on n'a pas été sensibilisé. D'où la remarque très pertinente d'Auteur. (Bon ok, tu n'utilises que des minuscules ... mais on n'est jamais trop prudent. Quid si dans la prochaine norme ECMAScript "div" (ou autre balise HTML) devient un mot clé réservé ? )
Pour finir ...
Il ne faut pas confondre DOM et javascript, le javascript vit très bien sans le DOM, le DOM n'est qu'un truc en plus fourni par le navigateur et avec le JS tu viens taper dessus.
DOM n'est pas seulement un truc en plus fourni pas le navigateur ... c'est l'essence même de la page web telle qu'elle est affichée dans le navigateur.
- on demande une page HTML à un navigateur
- le navigateur la parcourt, construit un modèle à partir de l'imbrication des balises et affiche le tout à partir de ce modèle.
- à chaque fois que le modèle (DOM) change, la page change
Dire que c'est un truc en plus est très réducteur pour cet ensemble d'interfaces riches et complètes qui permet de lire, modifier, mettre à jour et supprimer des éléments du document examiné.
Par exemple, si une page web est l'ensemble des éléments composant un meuble, le DOM serait le schéma et les outils nécessaires pour le monter et Javascript les instructions dans la langue que tu comprends.
Il y a ensuite beaucoup de langues permettant de lire les schémas et utiliser les outils (DOM Scripting) pour monter ce meuble (page web), mais une seule nous suffira pour ce faire (Javascript, par exemple). Les deux sont donc intimement liés dès lors que tu choisis cette langue pour lire les instructions.
Partager