Introduction au Javascript
Le langage du visiteur
par Oznog, Trucsweb
- 12 Novembre 1997
Le Javascript est issu de la technologie Netscape® qui travailla conjointement avec ECMA, le consortium européen des normes, afin d'adopter formellement le Javascript comme standard international. Le Javascript a été créé pour Internet. Il est très populaire car il lie au HTML la plupart des éléments de programmation rencontrés sur le Net. Comme le C ,le Java, ou les modules externes ou "plug-in"! Il permet à ces objets de communiquer et opérer entre eux. C'est le langage parfait pour le développement d'interfaces multiple et pour le contrôle du HTML dynamique, le "DHTML".
Netscape® continue de développer le langage Javascript pour lui fournir une plus grande puissance et pour faciliter son utilisation. Le Javascript 1.2 contient de nouveaux dispositifs comprenant entre autres un modèle de soutien de sécurité "capabilities-based" . Et du côté serveur, une facilité d'accès aux bases de données de presque tous les constructeurs.
Techniquement, le langage Javascript est un langage interprété au même titre que le HTML. C’est dire que ce langage n’a pas besoin d’être compilé avant d’être fonctionnel. C’est le navigateur qui se charge d’interpréter le langage Javascript et d’exécuter les tâches soumises par le langage. C’est d’ailleurs pour cette raison que le Javascript n’est pas toujours compatible selon le navigateur. Le DOM (document object model) est une méthode qui permet de définir plusieurs types d’objet justement pour réaliser des de documents le plus compatible possible. Le Javascript n’y échappe pas. Le tableau ci-dessous démontre la compatibilité du Javascript.Télécharger un document HTML officiel de Netacape sur le Javascript
jscript.zip
Compatibilié du Javascript entre les navigateurs Navigateur JS 1.0 JS 1.1 JS 1.2 JS 1.3 IExplorer® 3.0 x - - - IExplorer® 4.0 x x x - IExplorer® 5.0 5.5 x x x x Netscape® 2.0 x - - - Netscape® 3.0 x x - - Netscape® 4.04-5 x x x - Netscape® 4.06 4.7 x x x x
Compatibilité du JavascriptCe langage est aussi dit "embed script" ou script imbriqué, parce que le Javascript peut-être placé ou imbriqué à tout endroit entre les balises <HTML> et </HTML>. En général on le retrouve entre les balise d'en-tête <HEAD> et </HEAD> parce que cette section du HTML est interprétée en premier. Le navigateur interprète le code d'une page Web en partant d'en haut pour finir en bas de la page. Donc, si par exemple vous désirer faire un préchargement de vos images en Javascript, placer le script en question entre les balises d'en-tête feront en sorte que les images seront chargées avant même que la page ne s'affiche. D'un autre côté, si vous désirez afficher la date en bas de votre page, le script Javascript devra être imbriqué en bas de votre page à l'endroit même ou la date devra être affichée, donc entre les balises <BODY> et </BODY>.
DÉCLARATION
<SCRIPT LANGUAGE="Javascript">
-- Le code de votre script
</SCRIPT>Dans l'exemple, le code de votre script doit toujours être entouré des balises <SCRIPT> et </SCRIPT> pour indiquer au navigateur que le code a interprété est du Javascript à l'aide de l'attribut LANGUAGE. Mais vous avez peut-être déjà remarqué un Javascript déclaré comme ceci :
<SCRIPT>
-- Le code de votre script
</SCRIPT>C'est que le langage SCRIPT est par défaut le Javascript. Il n'apparait donc pas nécessaire de préciser le langage, chose que je ne vous conseil pas de faire. Indiquer plutôt le langage et aussi la version du Javascript utilisée. Vous verrez plus loin pourquoi. Voci la façon d'imbriquer un script Javascript:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="javascript1.2">
<!-- Début
-- Le code de votre script --
// Fin -->
</SCRIPT>
</HEAD>
<BODY>
-- Code de votre page HTML --
</BODY>
</HTML>Noter l'indication de la version 1.2 et l'ajout de HTML au Javascript avec la balise ou pseudo-balise "<!--". Cette balise HTML indique une remarque qui ne faut pas interpréter. Le navigateur n'interprétera aucun code tant et aussi longtemps qu'il ne rencontrera pas la terminaison de cette balise soit "-->". Ce code dénote à quel point le navigateur change de conscience lorsqu'il rencontre la balise SCRIPT. Il fera abstraction de la remarque et continuera d'interpréter le code. Quand le navigateur interprète du Javascript c'est la balise "//" qui indique une remarque. Balise utilisée pour terminer notre remarque HTML. Alors pourquoi cette remarque HTML. C'est pour les navigateurs qui ne comprennent pas le Javascript, comme ils ne le comprennent pas, tout code Javascript sera donc en remarque, seule la balise indiquant un script sera interprétée sans aucun effet puisque le HTML n'indique jamais ce qu'il ne comprend pas.
Vous pouvez imbriquer autant de script que vous désirez soit en ouvrant et fermant à chaque fois les balises <SCRIPT> soit en les ajoutant une après l'autre dans une seule déclaration <SCRIPT>.
Pour les plus avancés, ce langage peut aussi être interprété par le serveur. En effet, si le serveur le permet, comme IIS par exemple, l'ajout de " RUNAT=server " dans la déclaration d'un script fera en sorte que le langage sera interprété par le serveur et non le navigateur, mais attention, il ne peut être manipulé de la même façon. Vous ne pouvez par exemple utiliser des fonctions qui obtiennent certaines informations via le visiteur.
Exemple :
<SCRIPT LANGUAGE="javascript1.2" RUNAT=server>LE JAVASCRIPT AVEC ÉVÉNEMENTS
La Javascript peut aussi être interprété lorsqu'un événement survient. Un événement est une action qui est provoquée par le visiteur. Par exemple, lorsqu'il clique sur le bouton de la souris. Vous pouvez déclarer se qu'on appelle des " Event handlers " (manipulateur d'événement ) qui réagiront seulement à un événement précis. La syntaxe est :<BALISE HTML eventHandler="Code Javascript">
Par exemple, vous avez créé un script qui fait un calcul et vous voulez qu'il soit exécuté seulement quand le visiteur clic sur un bouton.
<INPUT TYPE= "button" VALUE="Calculer" onClick="calcul(this.form)">
La balise HTML INPUT est utilisée pour afficher un bouton (voir section HTML) et l'événement Javascript pour indiquer un clic est "onClick" . Voir plus loin les événements Javascript.
ATTENTION
En terminant il faut mentionner le problème de l'utilisation des guillemets. Puisque le guillemet " est utilisé couramment en Javascript, qu'il permet entre autres d'indiquer une chaîne de caractère, vous ne pouvez ajouter des guillemets dans une chaîne de caractère. Vous pouvez alors utiliser le guillemet simple '. Mais encore une fois cela peut causer des problèmes dans une chaîne délimitée par des guillemets simples. Alors utiliser le symbole / qui indique d'interpréter le caractère qui suit ce symbole comme étant un simple caractère.Exemple :
Chaine = "Voilà une chaîne de caractères avec /"guillemet/" qui fonctionne."
Chaine = 'Autre exemple avec "guillemet simple" qui fonctionne et l/'apostrophe.'Les Trucsweb
© 1997-2000 Conception Oznog co. Multimédia
www.trucsweb.com