Un javascript commence en général par :
<SCRIPT LANGUAGE="JavaScript">
et se termine par
</SCRIPT>
L'exécution de code dans une page peut être réalisé en l'insérant directement à l'endroit voulu (sans même utiliser la notion de fonction)
<SCRIPT LANGUAGE="JavaScript">
document.write('Bonjour');
for(i=1;i<10;i++) document.write(i);
</SCRIPT>
ou en provoquant l'appel à une fonction lorsque
surviennent certains événements.
Le bref exemple qui suit montre le code d’une fonction Java Script qui affiche
une chaîne de caractères reçues en paramètre.
<script language="JavaScript">
<!--function
affiche(texte)
{
alert(texte)
}
--></script>
que l'on peut appeler par exemple au chargement de la page par :
<body onload="affiche('Bienvenue sur ma page')">
Cette page ne vise pas à proposer une formation complète à Javascript, mais fournit simplement quelques informations de base. Plus de détails sur l'utilisation d'événements se trouvent sur une autre page.
Javascript permet de récupérer certaines informations sur la configuration de l'utilisateur et de réaliser quelques effets plus ou moins amusants.
<SCRIPT LANGUAGE="JavaScript1.2">
<!-- debut du script
if (screen.width==640)
alert("vous
êtes en 640x480");
else if (screen.width >= 800)
alert("vous
êtes en 800x600 ou plus");
//
Fin du script -->
</SCRIPT>
On se sert de la méthode open pour créer une nouvelle fenêtre de navigateur comportant ses propres caractéristiques. La syntaxe de la méthode open est la suivante:
[objet window] =
window.open ( [url] [,nom] [,caractéristiques] [,remplace] )
Paramètres de la méthode open:
Paramètre |
Description |
URL |
adresse web du document qui doit être chargé dans la
nouvelle fenêtre |
Nom |
nom de la fenêtre qui sera utilisée en tant que cible
(TARGET) pour d'autres documents HTML |
Caractéristiques |
liste d'options de la fenêtre (barre d'outils,
grandeur, etc) |
Remplace |
spécifie comment comment l'URL de la nouvelle fenêtre
sera positionné parmi la liste des adresses contenues dans l'objet "History" |
Tous les paramètres sont optionnels. Par exemple, l'instruction ci-dessous provoquera l'ouverture d'une nouvelle fenêtre vide:
open ();
À l'aide de la liste des propriétés, on peut personnaliser l'apparence de celle-ci, suite à son ouverture.
Propriétés |
Valeurs possibles |
Description |
Directories |
yes,
no |
barre des répertoires fournissant des liens vers divers sites Web |
Height |
nombre en pixels |
hauteur initiale de la fenêtre |
Left |
nombre en pixels |
distance entre la bordure gauche de la fenêtre et le début de l'écran |
Location |
yes,no |
barre de localisation |
Menubar |
yes,no |
barre de menus |
Resizable |
yes,no |
indique si on peut redimensionner la fenêtre |
Scrollbars |
yes,no |
barre de défilement du document |
Status |
yes,no |
barre de statut |
Toolbar |
yes,no |
barre d'outils |
Top |
nombre en pixels |
distance entre la bordure supérieure de la fenêtre et l'écran |
Width |
nombre en pixels |
largeur intitiale de la fenêtre |
Par exemple, le code JavaScript ci-dessus provoquera l'affichage d'une nouvelle fenêtre avec les propriétés spécifiées dans la liste:
fenetreA=window.open("test.html","contenu","status=no,location=yes,toolbar=yes,directories=no,resizable=yes,width=600,height=400,top=100,left=100");
La méthode close est utilisée pour fermer une fenêtre ainsi créée selon la syntaxe:
fenetreA.close();
La méthode close peut aussi s'appliquer à l'objet window, ce qui provoque la fermeture de la fenêtre courante:
window.close();
On pourra l'utiliser pour rajouter un lien de fermeture comme :
<a href="javascript:window.close()">F ermer la fenêtre</a>
Il est possible de générer le contenu d'une fenêtre ou d'un cadre à l'aide de la méthode write ou writeln. On peut composer une page HTML entière et même y ajouter du code JavaScript. Le code ci-dessous illustre comment est généré le contenu dans la fenêtre:
fenetreA=window.open("","contenu","status=no,location=yes,toolbar=yes,directories=no,resizable=yes,width=600,height=400,top=100,left=100");
fenetreA.document.open();
fenetreA.document.write
(<H1>Nouvelle fenêtre</H1>);
fenetreA.document.close();
La méthode open(), appliquée à l'objet document, doit être utilisée avant de pouvoir écrire dans la fenêtre. La méthode close doit être employée lorsque l'opération d'écriture est terminée.
Les principaux navigateurs n’utilisent pas des versions compatibles de JavaScript. Un problème de base est donc de détecter le navigateur utilisé afin de pouvoir écrire un script qui fonctionne dans tous les cas. Plusieurs approches sont disponibles :
<script language="JavaScript"><!--
Nav= (((navigator.appName ==
"Netscape") && (parseInt(navigator.appVersion)>= 3))
|| ((navigator.appName=="Microsoft
Internet Explorer") &&(parseInt(navigator.appVersion) >= 4)));
if (Nav) { ici le code exploitant
l’information}
--></script>
ou bien
if (document.all){
dynamic3.innerHTML='<center>Loading image...</center>'
dynamic3.innerHTML='<img src="'+which+'">'
}
else if (document.layers){
document.dynamic1.document.dynamic2.document.write('<img
src="'+which+'">')
document.dynamic1.document.dynamic2.document.close()
}