Technologies internet


Code JavaScript dans une page HTML


L'objet "document" (DOM)

Le DOM (Document Object Model) présente le document comme une hiérarchie d'objets (nodes) organisés en un arbre et il décrit une interface permettant à accéder et de mettre à jour le contenu, la structure et le style de documents HTML (plus généralement de type XML).

Intuitivement, l'objet "document" représente toute information attachée au contenu d'une page HTML, comme:

Grâce à ces structures et méthodes on peut créer dynamiquement des documents ou encore obtenir des informations sur le contenu d'un document.

L'objet document est créé au fur et à mesure quand les fichiers de la page se chargent. Parmi les méthodes de l'objet document on trouve:

Types de noeuds

Élément HTML

Chaque élément, node, du DOM, par exemple, retourné par document.getElementbyId(), contient plusieurs propriétés, comme:

Par exemple:

var x = document.getElementById("titre");
x.attributes; /* [{name:"id", value:"my_id",...},
                  {name:"style", value:"color:blue", 
                   ...}, ... ] */
x.childNodes; // [{textContent:"Mon titre", ...}]
x.getElementsByTagName("li"); // []
x.parentNode.getElementsByTagName("li"); 
     /* [{id="i1",textContent:"un",...},
         {id="i2",textContent:"deux",...},
         {id="",textContent:"bla",...}] */

Insertion de code JavaScript dans un fichier *.html

A. Utilisation de la balise "script"

B. Autres possibilités:

  <head>
    ...
    <script type="text/javascript" src="mon_programme.js"/>
   ...

C. Gestion de navigateurs sans support JavaScript

Cacher un script:

<script>
//<!-- Begin to hide script contents from old browsers.

..... expressions JavaScript...

// End the hiding here. -->
</script>

Afficher un contenu alternatif pour ces navigateurs: <noscript>

<noscript>
  <p>This page uses JavaScript!</p>
</noscript>

Exécution du code JavaScript

Le code JavaScript est déclenché par 2 moyens:

  1. Code JavaScript présent dans les éléments <script> de la page HTML - le code va être exécuté au moment de la construction de l'élément du DOM
  2. Traitement d'un "événement" (event handler):

La gestion des événements

En utilisant JavaScript on peut créer des pages web dynamiques. Événements (events) sont des actions qui peuvent déclencher l'exécution du code JavaScript.

Certains éléments du DOM peuvent posséder des événements comme:

DOM supporte aussi les événements liés au temps, comme: