Professional Documents
Culture Documents
JavaScript / DOM
SMI3
09-dec-14
JavaScript : Principe
JavaScript : le codage
Comment intgrer du code JavaScript dans une
page HTML ?
Exemple du
Cliquez ici
<FORM>
<INPUT type="button" value= "Cliquez
ici" onClick = "alert('Vous avez bien cliqu
ici')">
</FORM>
7
JavaScript : Exemple
<html>
<head>
<title>Ma premire page Web</title>
</head>
<body>
<script type="text/javascript">
<!-document.writeln( Bonjour tout le
monde!") ;
// -->
</script>
</body>
</html>
8
JavaScript : Exemple
<html>
<head>
<title>Page dynamique</title>
</head>
<body>
<script type="text/javascript">
<!-date = new Date();
document.writeln("Nous sommes le ", date);
// -->
</script>
</body>
</html>
9
Variables
Dclaration de variables facultative
Variables non types la dclaration
var nom_variable ;
Typage dynamique laffectation
Types grs:
Structures conditionnelles
if (condition)
{
instructions ;
}
[ else
{
instructions ;
} ]
11
Structures conditionnelles
switch (expression)
{
case tiquette :
instructions ;
break ;
case tiquette :
instructions ;
break ;
default :
instructions ;
}
12
Structures itratives
while (condition)
{
instructions ;
}
do
{
instructions ;
}
while (condition) ;
13
Structures itratives
for (instr ; condition ; instr)
{
instructions ;
}
Commentaires
// Commentaire ligne
/* Commentaire multi-lignes */
15
Fonctions
Valeur de retour non type
Arguments non typs
// Dclaration
function ma_fonction(arguments)
{
instructions ;
return quelque_chose; // ou pas
}
ma_fonction(12) ; // Appel
16
Objets
Les lments manipuls par JavaScript et
affichs dans votre navigateur sont des objets
17
Objets
Pour accder cet lment, on utilise la notation pointe
window.document.form.textarea
18
Objets prdfinis
window
alert(message)
// Message davertissement
confirm(message)
// Message de confirmation : retourne
true ou false
prompt(message, valeur_par_dfaut)
// Bote de saisie : retourne la chane
saisie
21
Objets prdfinis
document
write(message)
// Ecrire dans le document
writeln(message)
// Ecrire dans le document (retour la
ligne)
22
length
Mthodes
charAt(index)
concat(chaine2, chaine3, )
indexOf(aiguille[, index])
split(separateur[, limite])
substr(debut[, taille])
substring(debut, fin) dernier caractre
toLowerCase()
toUpperCase()
(exclus).
23
Chanes : Exemples
var s = "Bon anniversaire Benjamin" ;
document.write(s.charAt(2)) ;
n
document.write(s.concat(" du groupe C12")) ;
Bon anniversaire Benjamin du groupe C12
document.write(s.indexOf("Benjamin")) ;
17
document.write(s.split(" ")) ;
Bon,anniversaire,Benjamin
document.write(s.toUpperCase()+s.toLowerCase()) ;
BON ANNIVERSAIRE BENJAMINbon anniversaire benjamin
document.write("15/08/2000".substring(0, 2)) ;
15
document.write("15/08/2000".substring(3, 5)) ;
08
24
Objet Math
Proprits
Mthodes
abs(val)
acos(val), cos(val),
exp(val), log(val)
floor(val), round(val), ceil(val)
max(val1, val2), min(val1, val2)
pow(val, puiss), sqrt(val)
random() // 0 1
25
Fonctions
eval(chaine)
isFinite(nombre)
isNaN(objet)
parseFloat(chaine)
parseInt(chaine)
escape(chaine)
unescape(chaine)
27
28
Tableaux
Objet Array
Dclaration
var tab1 = new Array(taille) ;
var tab2 = new Array(1, "a", 9, ) ;
index 0
1
2
Utilisation
window.alert(tab2[0]) ; // 1
tab2[2] = 6 // 6 remplace 9
Tableaux
Parcours
var tab2 = new Array(1, "a", 9) ;
tab2[200] = 12 ;
for (i in tab2)
window.alert("tab2[" + i + "] = "
+ tab2[i]) ;
// tab2[0] = 1
// tab2[1] = a
// tab2[2] = 9
// tab2[200] = 12
30
length
Mthodes
concat(tab2, tab3, )
join(spar)
pop()
push(val1, val2, )
shift()
unshift(val1, val2, )
slice(dbut[, fin])
31
Contrle de formulaires
Prsence de valeur
Numrique / Chane
Expressions rgulires
vnement onSubmit
32
Text
Textarea
Hidden
Password
CheckBox
Radio (/!\ tableau de /!\)
Submit / Reset
Select
Option
FileUpload
33
Formulaires : <form>
Proprits
Name
:
Action :
Method :
Target :
Encoding
Nom du formulaire
Adresse du script de serveur excuter
Mthode d'appel du script (get ou post)
Destination du retour du formulaire
Mthodes
Evnements
<form>: Exemple
<html><head><title>Contrle</title>
<script language="javascript">
function verif() {
if (document.formu.txt.value != '')
return window.confirm('Envoyer ?') ;
return false ; }
</script></head><body>
<form name="formu" action="URI" method="GET"
onSubmit="return verif() ;">
<input type="text" name="txt">
<input type="submit" value="Envoyer">
</form></body></html>
35
Evnements
36
<input>: Exemple
<html><head><title>Contrle</title>
<script language="javascript">
function Confirmer() {
return window.confirm('Voulez-vous
vraiment soumettre ?') ;}
</script></head><body>
<form >
Objet this
Il est fastidieux d'accder aux lments de
formulaire par toute la chane
document.forms.elements
Un objet JavaScript this permet de raccourcir ce
chemin d'accs
this reprsente l'objet JavaScript en cours
d'utilisation
38
42
Constructeur
getDay(), attention de 0 (dimanche) 6 (samedi)
getDate() / setDate()
getMonth() / setMonth(), attention de 0 11
getHours()/ setHours()
getMinutes() / setMinutes()
getTime() / setTime()
getYear() / setYear() / getFullYear() / setFullYear()
parse()
43
Dates : Exemples
var today = new Date()
Tue Dec 08 2014 17:11:36 GMT
document.write(today);
var birthday = new Date(95,11,17)
document.write(birthday); Sun Dec 17 1995 00:00:00 GMT
document.write(birthday.getDay()) ;
0
document.write(birthday.getDate()) ;
17
birthday.setDate(25) ;
document.write(birthday) ;
Mon Dec 25 1995 03:24:00 GMT
44
name
src
width
height
Mthodes
constructeur
Image()
Image(largeur, hauteur)
45
Images: Exemples
<script type="text/javascript">
// Une image
rouge = new Image(100, 100) ;
rouge.src = 'rouge.gif' ; // Prchargement
// Une autre image
vert = new Image(100, 100) ;
vert.src = 'vert.gif' ; // Prchargement
// Modification de la 13e image de la page Web
document.images[12].src = rouge.src ;
vnement onKeyUp/onKeyDown
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head> <title>onKeyUp</title>
<script type='text/javascript' language='JavaScript'>
<!
function maj() {
document.f.mail.value =
document.f.prenom.value.toLowerCase()+'.'
+document.f.nom.value.toLowerCase() ; }
// -->
</script>
</head> <body>
<form name='f'>
Nom
<input type='text' name='nom'
onKeyUp='maj()'><br>
Prenom <input type='text' name='prenom' onKeyUp='maj()'><br>
Login <input type='text' name='mail' disabled>
</form>
</body> </html>
48