JavaScript, langage et utilisation

Introduction

Les inconvénients :
Les règles :

Liens utiles

Un petit exemple pour commencer


nombre 1

nombre 2

Résultat

Le même avec une table...


nombre 1
nombre 2
Résultat

Javascript dans une page web

Comment inclure du code dans une page ?

Plusieurs solutions :

La balise script

Remarque

Si le code javascript comporte des caractères "spéciaux" pour HTML, comme '>', '< ou '&', les logiciels de validations émettent un warning. En théorie, il faudrait "protéger" ces caractères. Cependant, aucun des systèmes existant n'est parfaitement supporté pour le XHTML. La seule solution (à part d'ignorer superbement le problème, ce que nous faisons ici) est d'utiliser de préférence l'inclusion de code.

Appels javascript lié à des événements

Pseudo-url

On peut aussi remplacer une URL par du javascript, en précisant javascript: comme protocole:

comme pour les événements, on gardera le code le plus court possible.

	

Constructions de base

Le code JavaScript est une suite d'instructions, dont certaines peuvent être des déclarations de fonctions ou des affectations.

Variables en javascript

les fonctions



à noter:

Variables globale



Dans cet exemple, la variable exempleVariable1 modifiée par la fonction est la même que la variable globale.

Variables locale





Types de données

les chaînes

Chaînes et nombres

Deux fonctions de javaScript sont particulièrement intéressantes:

Notez que ces deux fonctions sont très permissives. Elles acceptent des chaînes qui commencent par un nombre, et, s'il y a du texte après, elle l'ignorent. Pour tester si elles ont réussi, on utilisera la fonction isNaN().

	s="1234";
	i= parseInt(s);
	if (isNaN(i)) {
		alert(s + " n'est pas un nombre");
	}

les tableaux (Array)

Structures de contrôle

if

if (CONDITION) {
  ACTIONS1;
} else {
  ACTIONS2;
}

for

for (INIT; TEST; INCREMENT) {
  ACTIONS;
}
exemple
s= 0;
for (i= 0; i < tab.length; i++) {
  s= s+ tab[i];
}

while

while (CONDITION) {
  ACTIONS;
}

do...while

do {
  ACTIONS;
} while (CONDITION);

switch

switch (VALEUR_A_TESTER) {
  case VAL1:
  	ACTIONS;
  break;
  case VAL2:
  	ACTIONS;
  break;
  default:
  	ACTIONS;
}
Contrairement au C et au Java, la valeur à tester peut être une chaîne de caractères:
switch (reponse) {
	case "oui":
		alert("merci");
	break;
	case "non":
		alert("au revoir");
	break;
}

Manipulation de la page Web

But: pouvoir lire et modifier des éléments de la page web par programme.

Première approche du DOM

Propriétés des éléments

Un élément retourné par getElementById a plusieurs propriétés, que l'on peut lire et/ou écrire. Nous allons les détailler.

DOM et CSS (Cascading Style Sheets)

Les caractéristiques de cet élément sont contrôlées par les CSS.






DOM et CSS (suite)

On utilise en particulier la propriété "display", et sa valeur "none", pour faire apparaître et disparaître des éléments.

Vous le voyez ?


Exercice: écrire une fonction qui bascule l'élément entre l'état
"caché" et l'état visible, et vice-versa.


Manipulation des images

On peut changer ce qu'une image affiche en modifiant sa propriété "src":

une bille
<img id="img1" src="ledlightblue.png" 
		onmouseover="document.getElementById('img1').src='ledgreen.png'"
		onmouseout="document.getElementById('img1').src='ledlightblue.png'" 
		alt="une bille"
	/>