La tête du client
Parmi les fonctions les plus utilisées du JavaScript,
on doit mentionner sa capacité à identifier
le navigateur et la machine utilisés par l'internaute.
CrapoWeb vous propose de suivre pas à pas la réalisation
d'un script à intégrer à votre pages
d'accueil.
On commence par insérer dans la balise HTML <HEAD>
le code JavaScript requis :
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
La propriété appName de l'objet navigator
est une chaîne informant sur le nom du navigateur.
Notre script stocke sa valeur dans la variable APP.
var APP=navigator.appName
La propriété appVersion de l'objet navigator
donne quant à elle des informations sur la version
du navigateur sous la forme suivante : Numéros de
version (plate-forme ; pays; ). Avec un Mac utilisant
Netscape 4, on obtient par exemple : 4.04 (Macintosh; I
; PPC) où "I" signifie International release.
Il est aisé de convertir cette chaîne commençant
par un nombre entier, à l'aide de le fonction parseFloat()
. Nous créons une variable VERS pour stocker le résultât.
var VERS=parseFloat(navigator.appVersion)
Le mot clé if permet de tester si la propriété
appVersion contient ou non la chaîne "WIN". Si appVersion
ne contenait pas la sous-chaîne "WIN" (si la
machine était un Mac par exemple) alors indexOf(
"WIN" ) plutôt que de renvoyer la position de la sous-chaîne,
retournerait -1.
if (navigator.appVersion.indexOf("win") !=-1) {
MACHINE="Windows"}
else {
MACHINE="unknown"}
}
Pour identifier une autre plate-forme il faudrait alors
procéder à autant de test qu'il y de désignations
possibles ! On se simplifiera la tâche si l'on
convertit appVersion en minuscules à l'aide de la
méthode toLowerCase() :
AV=navigator.appVersion.toLowerCase()
if (navigator.AV.indexOf("sunos") != -1 {
MACHINE="sun"}
if navigator.AV.indexOf("ppc") !=-1 {
MACHINE="Mac"}
...
Nous voici désormais en possession de trois variables
APP, MACHINE, VERS qu'il est possible d'utiliser dans le
corps de la page pour saluer le navigateur :
<BODY>
<SCRIPT LANGUAGE="JavaScript">
document.write("Bonjour à l'utilisateur de "+
APP + " "+ VERS +" sur "+ MACHINE) </SCRIPT>
</BODY>
Vous trouverez ci-après la source de la page dans
son entier :
<HEAD>
<TITLE>
SALUT AU NAVIGATEUR
</TITLE>
<SCRIPT LANGUAGE="JavaScript">
// Script utile offert par le CrapoWeb
var APP=navigator.appName
var VERS=parseFloat(navigator.appVersion)
if (navigator.appVersion.indexOf("win") != -1) {
MACHINE="Windows"}
else {
if (navigator.appVersion.indexOf("Mac") != -1 {
MACHINE="Macintosh" }
else {
MACHINE="Unknown"
}
}
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
document.write("Bonjour à l'utilisateur de "+
APP + " " + VERS + (MACHINE!="Unknown" ? " sur " + MACHINE
: "")
</SCRIPT>
...
</BODY>
</HTML>
Une liste des informations retournées par appVersion
en fonction des différentes plates-formes peut être
consultée en ligne sur http://home.kiss.de/~i_thum/JS_tutorial/bstat/navobj.html
|