9
Shelley Powers Débuter  en JavaScript © Groupe Eyrolles, 2007, ISBN : 978-2-212-12093-6

TDM Javascript Debuter

Embed Size (px)

Citation preview

Page 1: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 1/9

 

S h e l l e y P o w e r s

Débuter en

JavaScript

© Groupe Eyrolles, 2007,

ISBN : 978-2-212-12093-6

Page 2: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 2/9

 

Table des matières

Avant-Propos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XIII

CHAPITRE 1

Introduction et premières expériences . . . . . . . . . . . . . . . . . . . . . 1

Histoire de JavaScript : spécifications et implémentations . . . . . . . . . . . . 2

Incompatibilités des navigateurs et autres mythes JavaScript . . . . . . . . . . 5

Ce que vous pouvez faire avec JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . 5

Premier contact avec JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

L’élément script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Où placer le code JavaScript ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Cacher les scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Les fichiers JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Les commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Les objets du navigateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Les objets standards JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Les fonctions JavaScript définies par l’utilisateur . . . . . . . . . . . . . . . . . . 14

Les gestionnaires d’événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Le mot-clé var et la portée des variables . . . . . . . . . . . . . . . . . . . . . . . . . 16

L’opérateur de propriété . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Les instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Ce que vous n’avez pas vu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

La « sandbox » JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

Les meilleures pratiques en matière d’accessibilité . . . . . . . . . . . . . . . . . . 19

Les règles de l’accessibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

noscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Une alternative à noscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Page 3: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 3/9

 

Débuter en JavaScriptVI

CHAPITRE 2

Les types de données et les variables JavaScript . . . . . . . . . . 27

Identifier les variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Portée des identificateurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Les types simples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Le type string (chaîne de caractères) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Le type boolean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Le type number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Null et undefined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Les constantes : nommées, mais non-variables . . . . . . . . . . . . . . . . . . . . . 49

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

CHAPITRE 3

Les opérateurs et les instructions . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Forme des instructions JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Les instructions simples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

L’instruction d’affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Les opérateurs arithmétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Les opérateurs unaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Priorité des opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Un raccourci pratique : l’affectation avec une opération . . . . . . . . . . . . . 58

Les opérateurs de manipulation de bits . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Les instructions conditionnelles et le flux d’exécution . . . . . . . . . . . . . . . 61

if...else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

L’instruction conditionnelle switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Les opérateurs relationnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Les opérateurs d’égalité et d’identité (égalité de chaînes) . . . . . . . . . . . . 68

Les autres opérateurs relationnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

L’unique opérateur ternaire de JavaScript . . . . . . . . . . . . . . . . . . . . . . . . 73

Les opérateurs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Les boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

La boucle while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

La boucle do...while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

La boucle for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Page 4: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 4/9

 

Table des matièresVII

CHAPITRE 4

Les objets JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Le constructeur d’objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

L’objet Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

L’objet String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

RegExp et les expressions rationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Les méthodes de RegExp : test et exec . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Utiliser les expressions rationnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Des objets utiles : Date et Math. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

Date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

Math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Les méthodes mathématiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Les tableaux JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Construction des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Les queues FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Les tableaux associatifs : des tableaux qui n’en sont pas vraiment . . . . . . 112

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

CHAPITRE 5

Les fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Définition de fonctions : trois méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . 115

Les fonctions déclaratives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

Valeur de retour et arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

Les fonctions anonymes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Les fonctions littérales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Résumé des types de fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Les fonctions de rappel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Les fonctions et la récursivité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Fonctions imbriquées, closures et fuites de mémoire . . . . . . . . . . . . . . . . 128

Les fonctions en tant qu’objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

CHAPITRE 6

Gérer les événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

La gestion des événements du DOM niveau 0. . . . . . . . . . . . . . . . . . . . . . 137

L’objet Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Page 5: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 5/9

 

Débuter en JavaScriptVIII

La propagation des événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Les gestionnaires d’événements et this . . . . . . . . . . . . . . . . . . . . . . . . . . 146

Déclencher des événements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

CHAPITRE 7

Formulaires et validation JiT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

Accéder à un formulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

Attacher des événements aux formulaires : les différentes approches . . . . 158

La sélection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

Modification dynamique de la sélection . . . . . . . . . . . . . . . . . . . . . . . . . 162

Sélection et validation JiT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Les boutons radio et les cases à cocher . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

Les éléments textarea, text, hidden et password . . . . . . . . . . . . . . . . . . . . 165

Traitement du texte JiT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168

Validation JiT des champs de texte au moyendes expressions rationnelles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

CHAPITRE 8

Cookies, connectivité et piratage . . . . . . . . . . . . . . . . . . . . . . . . . . 175

L’environnement sécurisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

La règle de la même origine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

Utilisation de document.domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

Les cookies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

Lecture et écriture des cookies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

Autres techniques de stockage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

Communiquer au-delà de la zone sécurisée . . . . . . . . . . . . . . . . . . . . . . . 184

Flash SO et le stockage Dojo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

Pouvons-nous ? Devons-nous ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185

Le Cross Site Scripting (XSS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186

Les injecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

Que faire ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

 

Page 6: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 6/9

Table des matièresIX

CHAPITRE 9

Les objets standards du navigateur . . . . . . . . . . . . . . . . . . . . . . . . 191

Premier coup d’œil sur le BOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

L’objet window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

Les boîtes de dialogue : alert, confirm et prompt . . . . . . . . . . . . . . . . . . . 193

Création de fenêtres personnalisées . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193

Communication entre les fenêtres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Modification d’une fenêtre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

Les timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

Cadres et adresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

L’objet location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204

Script à distance avec iframe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206

history, screen et navigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

navigator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

Une page, trois objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211

document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

Les liens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214

Les images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216

La collection all et les propriétés innerHTML et outerHTML . . . . . . . . . 218

Du vieux, du neuf  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

Questions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

CHAPITRE 10

Le DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

Une histoire de deux interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

Le DOM et les navigateurs compatibles . . . . . . . . . . . . . . . . . . . . . . . . . . 225

L’API DOM HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

Les objets HTML et leurs propriétés . . . . . . . . . . . . . . . . . . . . . . . . . . . 227L’accès aux objets HTML et les différences entre les navigateurs . . . . . . 230

Comprendre le DOM : L’API Core . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

L’arbre du DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

Propriétés et méthodes des nœuds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

Parcourir l’arbre du DOM avec Node . . . . . . . . . . . . . . . . . . . . . . . . . . . 239

L’objet document de l’API DOM Core . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

Éléments et accès en contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

 

Page 7: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 7/9

Débuter en JavaScriptX

Modification de l’arborescence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

CHAPITRE 11

Création d’objets JavaScript personnalisés . . . . . . . . . . . . . . . . 253

Les objets JavaScript et le prototypage . . . . . . . . . . . . . . . . . . . . . . . . . . . 254

Le prototypage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254

Création d’objets JavaScript personnalisés . . . . . . . . . . . . . . . . . . . . . . . . 256

Les fonctions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257

Propriétés publiques et privées : utilisation de this . . . . . . . . . . . . . . . . . 260

Détection d’objet, encapsulation et compatibilité des navigateurs . . . . . . 261

La détection d’objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

Encapsulation des objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

Le chaînage des constructeurs et l’héritage en JavaScript . . . . . . . . . . . . . 266

Les objets uniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268

Techniques de gestion d’erreur (try, throw, catch) . . . . . . . . . . . . . . . . . . 270

Quoi de neuf en JavaScript ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275

Juste ce qu’il faut de changement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

Changement d’échelle pour les dix prochaines années . . . . . . . . . . . . . . 276

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

CHAPITRE 12

Construire des pages Web dynamiques :donner du style à vos scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279

DHTML : JavaScript, CSS et DOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280

La propriété style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

Les polices et le texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

Les propriétés font . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286

Les propriétés text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287

Position et mouvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290

Le glisser/déposer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294

Contrôle de la taille et du détourage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298

Détourage et contenu dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299

Le rectangle de détourage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

Affichage, visibilité et opacité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

Utiliser les outils adaptés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

 

Page 8: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 8/9

Table des matièresXI

Information permanente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305

Des formulaires à géométrie variable . . . . . . . . . . . . . . . . . . . . . . . . . . . 307

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309

CHAPITRE 13

Au-delà de la page avec Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311

Ajax : au-delà du code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

PermaQuoi ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312

Sécurité : problèmes et solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313

Meilleures pratiques Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314

Principe d’Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314

Bonjour Ajax !. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

L’objet Ajax : XMLHttpRequest et ActiveX . . . . . . . . . . . . . . . . . . . . . . 318

Objet, objet, qui a l’objet ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

Les méthodes de l’objet XMLHttpRequest . . . . . . . . . . . . . . . . . . . . . . . 320

Faut-il utiliser XML ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323

XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323

JavaScript Object Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327

Google Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333

CHAPITRE 14

Les bibliothèques Ajax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335

Quelques conseils de prudence préalables . . . . . . . . . . . . . . . . . . . . . . . . . 336

Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

Téléchargement, installation et utilisation . . . . . . . . . . . . . . . . . . . . . . . . 337

Les fonctions utilitaires et les extensions JavaScript . . . . . . . . . . . . . . . . 338

Quelques objets spécialisés de Prototype . . . . . . . . . . . . . . . . . . . . . . . . 340

Problèmes potentiels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

Script.aculo.us. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342

Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

Aperçu des effets disponibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

Rico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

Les coins arrondis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

Dojo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

Installation et configuration de Dojo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349

Les widgets Dojo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350

 

Page 9: TDM Javascript Debuter

5/14/2018 TDM Javascript Debuter - slidepdf.com

http://slidepdf.com/reader/full/tdm-javascript-debuter 9/9

Débuter en JavaScriptXII

Yahoo! UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354

MochiKit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

Journalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357

Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361

CHAPITRE 15

Réponses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377