Les objets du navigateur


Retour au menu

La hiérarchie des objets JavaScript

Voici la hiérarchie de toutes les classes d'objets gérés par le Navigateur

navigator 

window 
  |
  + --parent, frames[], self, top
  |
  + --location
  | 
  + --history
  |
  + --document
       |
       + --forms[] 
       |    |
       |  elements[] (text, textarea, checkbox, password
       |            radio, select, button, submit, reset)   
       + --links[]
       |
       + --images[]
       |
       + --URL

Les classes de base du navigateur

Accéder aux propriétés d'un objet


Compléments : connaitre les propriétés d'un objet

On peut connaitre toutes les propriétés des objets avec une itération FOR .... IN
Par exemple pour l'objet document :
function proprietes() {
var objet;
var n=document.ppte.liste.selectedIndex;
switch (n) {
case 0:  objet=navigator; break;
case 1:  objet=navigator.plugins; break;
case 2:  objet=navigator.mimeTypes; break;
case 3:  objet=window; break;
case 4:  objet=window.location; break;
case 5:  objet=window.history; break;
case 6:  objet=window.document; break;
case 7:  objet=document.forms[0]; break;
case 8:  objet=document.forms[0].elements; break;
case 9:  objet=document.images; break;
case 10:  objet=document.links; break;
case 11:  objet=forms[0].liste.options; break;					
}
var nom=document.ppte.liste.options[n].text;
fen=open("","Proprietes","width=600,height=250,toolbar=yes,
 directories=no, menubar=no,scrollbars=yes,status=yes"); 
fen.focus();
var texte = "";
 for (var i in objet )
 texte +=nom+"."+i+" = " +objet[i] +"
"; fen.document.write(texte); fen.document.close(); }



La classe navigator

Cette classe ne contient qu'un seul objet, appelé navigator, qui est créé au démarrage du logiciel.
Voici l'ensemble de ses propriétés, avec leur valeur, pour le navigateur actuel.

navigator.userAgent = Mozilla/4.7 [fr] (Win95; I)
	informations générales envoyées au serveur HTTP à chaque requête du navigateur
navigator.appCodeName = Mozilla 
	nom de code 
navigator.appVersion = 4.7 [fr] (Win95; I)
	informations sur la plate-forme d'exécution
navigator.appName = Netscape
navigator.language = fr
navigator.platform = Win32
	type de machine 
navigator.securityPolicy = France policy
navigator.plugins = [object PluginArray]
	tableau des plug-ins installés
navigator.mimeTypes = [object MimeTypeArray]
	tableau des types mimes (voir Edition/préférences/navigator/applications

Exemples d'utilisation

  1. Il est nécessaire de tester le navigateur "client", pour pouvoir adapter le code si nécessaire aux 2 navigateurs Netscape et Explorer.
    Par exemple, voici un script qui renverrait à la page précédente s'il ne décèle pas Netscape.
    if (navigator.appName !='Netscape') 
      window.history.back();
    else
      document.write('Vous avez fait le bon choix !')
    
  2. Tout aussi important est la nécessité de savoir si le navigateur posséde un plug-in, module externe, pour interpréter certains types de fichiers comme les fichiers sons, vidéos, pdf ..
    Exemple :
    tester si le navigateur peut interpréter du code Shockwave, avant de lui envoyer un fichier.
    Pour cela on interroge le tableau plugins[], propriété de navigator : posséde t-il un élément indexé par 'Shockwave' ?
    if (navigator.plugins['Shockwave']) 
      document.write('<EMBED NAME="acte_1" SRC="acte_1.swf"
      WIDTH="100%" HEIGHT="100%" ALIGN="LEFT" QUALITY="high" SALIGN="lT"> ');  
    else
     document.write('Désolé, votre navigateur ne sait pas afficher Shockwave');