Si vous désirez incorporer des propriétés ou méthodes JS dans une de vos pages HTML, WebExpert 5 vous permet par cet assistant d'incorporer les mots-clés correspondant.
Pour lancer l'assistant, cliquez sur le bouton
de l'onglet Javascript...
Cette propriété vous permet de connaître le nom du navigateur utilisé, mais il faut bien sûr l'inclure dans une procédure. Pour exemple, voici le code d'un petit script de détection [function detect()] qui emploient certaines propriétés de l'objet Navigator. Ce script propose par un clic sur un bouton de donner dans un message d'alerte le nom du navigateur, ainsi que sa version.
Deux variables (navig et vers) sont d'abord crées pour contenir les valeurs des propriétés (navigator.appName et navigator.appVersion) que vous insérez avec le bouton "Commandes Javascript en bref) selon la procédure décrite précédemment.
Par le même assistant des "Commandes JS en bref", vous pouvez insérer dans votre code différentes méthodes, et en l'occurrence ici, la méthode "substring" de l'objet "string". Voici le code inséré :string.substring(index1[,index2]) par l'assistant.
Cette méthode vous permet d'extraire, d'une chaîne de caractère (string) une portion de celle-ci s'étendant depuis caractère situé à la position (index1) à celle du caractère situé à la position (index2).
Dans notre exemple, nous voulons extraire le numéro de version du navigator, et comme seulement les trois premiers caractères nous intéresse (arbitraire), nous pouvons extraire ceux-ci par la méthode décrite :
qui extrait donc la chaîne de caractère qui commence depuis la position (0) jusqu'à la position (3). On choisi ici (3), parce que suivant Netscape ou Internet Explorer, il peut y avoir plus de caractères et dans ce cas, d'autres caractères intempestifs (parenthèses, crochets) seraient inclus dans la chaîne de caractères extraites, or, cette variable va servir plus loin dans le script (comme chiffre), il est donc impératif de ne prendre que des chiffres (4,0 par exemple).
Vous pouvez insérer la méthode "alert()" de l'objet window, par l'assistant et il n'est plus utile d'expliquer ici son fonctionnement puisque nous l'avons déjà fait dans la section "Notions générales", par contre attardons-nous sur le code suivant :
Dans cette condition (if), on vérifie si la propriété (navigator.appName) est bien "Netscape" mais celle-ci liée par un opérateur logique (&&) par l'emploi d'une autre méthode, dite "built-in" (interne) de Javascript, parce qu'elles ne sont pas rattachées à un objet bien précis : elles peuvent donc s'employer seules, comme une fonction propre (escape, eval, parseInt, parseFloat, unescape).
C'est la fonction "parseInt" qui est employée dans notre exemple. Cette fonction retourne l'entier correspondant à la chaîne (premier argument) écrit dans la base du deuxième argument(optionnel). Dans notre exemple, la fonction retourne l'entier correspondant au caractère, retiré par la méthode substring (0,1). La condition vérifie si le navigateur est donc bien de la version 4 et plus. Il y a une certaine redondance dans ce script, puisque l'on a déjà cette information par la variable "vers" mais ce script a surtout une valeur pédagogique.
WebExpert 5 vous fournit une aide très détaillée, sur les références Javascript : cliquez sur le menu "Aide", section "Références javascript". Vous avez également la possibilité d'effectuer une recherche
sur les propriétés, méthodes ou objets. C'est une véritable "mine d'or" qui aide considérablement le programmeur lors de son travail. Un
système d'aide sur les spécifications du CSS2 - HTML - SSI (Server Side Includes) est également fourni.
Vous pouvez visionner les étapes pour trouver dans l'aide sur les références javascript la méthode "alert" de l'objet "windows".
Si vous employez Internet Explorer 5, la version détectée est toujours "4" mais un script plus évolué peut vous donner la bonne description du navigateur ainsi que le système d'exploitation par exemple.
Vous pouvez trouver dans la section "Annexe" la page "detect2.html", qui comporte ce script compatible Internet Explorer et Netscape.