Très vite, vous avez dû vous en rendre compte, HTML ne suffit plus...
Tant qu'un site n'est destiné qu'à afficher ses photos de familles, ça va, mais dès que l'on veut un peu l'animer, des besoins nouveaux surgissent... preuve en est le courrier abondant que je reçois sur des "Comment faire pour..." auquel je réponds très souvent "un JavaScript !"
<HTML> <BODY> <script language="VBScript"> document.write now </script> </BODY> </HTML>
Enregistrez comme une page HTML normale, ouvrez-la dans votre navigateur, la date courante s'affiche...
Regardez la source de la page (click droit), la date n'y figure pas bien sûr... mais votre navigateur a interprété votre script et affiché son résultat !
En farfouillant sur internet, en regardant les pages des autres, vous trouverez tout un tas de scripts... Profitez-en pour réutiliser ceux qui semblent bien écrits !...
Où placer les scripts ?
Avant <HTML> si le script doit s'exécuter avant la composition de la page ;
Dans le <Head> si l'on veut pré-déclarer des procédures ou regrouper ses scripts ;
Dans le corps de la page, au fur et à mesure des besoins ;
Dans une balise si le script n'est pas trop long...
<A href="javascript:void(0)" onclick="alert('Salut !')">Bonjour</A>
donne le lien Bonjour !
<A href="vbscript:" onclick='vbscript:MsgBox("Salut !")'>Bonjour</A>
Après </HTML> si le script a besoin d'attendre que la page soit totalement construite pour s'exécuter ;
Dans la balise <BODY> on peut également appeler un script en fonction d'évènements, principalement :
<BODY onload="start()"> appellera votre fonction start() à la fin du chargement de la page ;
<BODY onunload="quit()"> appellera votre fonction quit() lorsque le visiteur quittera votre page.
Ou dans un fichier séparé, pour tout ce qui doit être réutilisé par plusieurs pages... dans ce cas :
- sauvegarder les procédures dans un fichier d'extension .js ;
- ne pas mettre dans ce fichier les balises <script> et </script> ;
- appeler ce fichier par la ligne <script src="monfichier.js"></script> AVANT d'invoquer ses procédures...
A savoir
Le séparateur d'instructions est le point-virgule ; en JavaScript et le deux-points : en VBScript
Un commentaire sur une ligne commence par // en JavaScript et par l'apostrophe ' en VBScript
Le navigateur a besoin de connaître quel est le langage utilisé (JavaScript ou Visual Basic Script), il faut donc lui préciser : <script language="JavaScript"> ou <script language="VBScript">
Les anciens navigateurs ne connaissent pas ces langages... il faut donc leur cacher les scripts en les encadrant par les mots <!-- et //--> et éventuellement leur prévoir quelque chose encadré par <noscript> et </noscript> !