26
Programmation Web Javascript et JQuery Julien David A101 - [email protected] 2016 Julien David (A101 - [email protected]) 2016 1 / 26

Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Embed Size (px)

Citation preview

Page 1: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Programmation WebJavascript et JQuery

Julien David

A101 - [email protected]

2016

Julien David (A101 - [email protected]) 2016 1 / 26

Page 2: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Presentation Generale

Langage Javascript :Langage de script, interprete par le navigateur.permet de rendre les pages webs plus dynamiques.permet de modifier le code HTML et le code CSS d’une page.permet un gestion des evenements plus fine que CSS.

JQuery :bibliotheque javascript permettant de simplifier la syntaxe.

Julien David (A101 - [email protected]) 2016 2 / 26

Page 3: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Presentation Generale

Citation (d’un illustre inconnu) :

“Javascript is to Java as Hamster is to Ham.”

(le javascript est au java ce que le hamster est au jambon).

Julien David (A101 - [email protected]) 2016 3 / 26

Page 4: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Ecrire du code Javascript

Code JavascriptCompris entre les balises <script> et </script> a l’interieur du HTML.Les instructions terminent par;Commentaires :

// Commentaire uniligne/* Commentaire multiligne */

Julien David (A101 - [email protected]) 2016 4 / 26

Page 5: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Inclure du code Javascript

Trois methodes :1 ecrire le code directement dans le fichier HTML.2 ecrire le code dans un fichier a part et inclure le code.

Dans les deux cas, on utilise la balise script3 associer une balise a un evenement.

JqueryPour inclure la bibliotheque Jquery, on ajoute dans l’en-tete du HTML lacommande : <script src=”jquery-2.2.1.min.js”> </script>

Julien David (A101 - [email protected]) 2016 5 / 26

Page 6: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Affichage avec Javascript

Plusieurs instructionsalertwriteinnerHTML (on ne l’utilisera pas)log

Julien David (A101 - [email protected]) 2016 6 / 26

Page 7: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Variables

Les variablesDeclaration : on ajoute var devant le nom de la variable.le type d’une variable :

est implicite (pas besoin de declarer une variable).depend de la valeur qu’on lui affecte (peut varier dans le temps).

si une variable n’est pas initialisee, elle est egale a undefined

Julien David (A101 - [email protected]) 2016 7 / 26

Page 8: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Variables

Les types de variablesnombresbooleens,chaınes de caracteres,objet,fonction.

Julien David (A101 - [email protected]) 2016 8 / 26

Page 9: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Variables

Pour bien coder, on garde les regles habituellestoujours declarer les variables, avec var, au debut du code.toujours initialiser les variables.

Julien David (A101 - [email protected]) 2016 9 / 26

Page 10: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Chaınes de caracteres

La concatenationIl est possible de concatener des chaınes de caracteres entre elles, ou avecdes variables.Operateur : +

Attention : symboles et conversion automatiqueLe symbole + signifie donc addition pour les nombres et concatenationpour les chaınes de caracteres.Les symboles -, * et / signifient soustraction, multiplication et divisionpour les nombres ET pour les chaınes de caracteres.

Julien David (A101 - [email protected]) 2016 10 / 26

Page 11: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Tableaux

Les tableaux en Javascriptun tableau associe un entier . . .. . . a une valeur de n’importe quel type.

Julien David (A101 - [email protected]) 2016 11 / 26

Page 12: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Boucles et conditions

Boucles for et whileLe principe et la syntaxe sont les meme qu’en C.

if, else if, else, switchLe principe est le meme qu’en C/C++.

La difference (qu’on retrouve en PHP)Operateur supplementaire : === teste si la valeur et le type sont egaux.

On preferera utiliser cet operateur plutot que ==.

Julien David (A101 - [email protected]) 2016 12 / 26

Page 13: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Fonctions

Syntaxefunction nomFonction(parametres){ }

Particulariteson peut definir une fonction sans lui donner de nom,on peut definir une fonction sans declarer le nombre exact deparametres. On utilise alors l’objet arguments pour recuperer lesarguments de la fonction.

Julien David (A101 - [email protected]) 2016 13 / 26

Page 14: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Objets

“Objets”En javascript, les objets sont des variables contenant plusieurs valeurs.On ne peut pas definir un objet et reutiliser cette definition.On peut declarer une variable de type objet et initialiser ses champs.On peut a tout moment ajouter un champ dans un objet.On peut definir une fonction qui joue le role de constructeur (qui jouealors le role d’une definition).

Julien David (A101 - [email protected]) 2016 14 / 26

Page 15: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Objets predefinis

Les objets predefinisWindow,Screen,Location,History,Navigator,Timing,Cookies.

Des objets depreciesNe pas utiliser Number, String, Boolean et Object.

Julien David (A101 - [email protected]) 2016 15 / 26

Page 16: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

Les selecteurs

Acceder a une balise HTMLJavascript permet de modifier dynamiquement des zones d’une pageHTML,Pour cela, on veut pouvoir acceder a des zones specifiques de la pageafin de pouvoir les modifier.

Julien David (A101 - [email protected]) 2016 16 / 26

Page 17: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : les selecteurs

<p id=”idPar” class=”classPar”>Je suis un paragraphe.</p>

Selecteurs JQueryLa syntaxe est la meme qu’en css pour designer les balises, les classes et lesidentifiants.

$(“p”) Accede a toutes les balises de type p$(“.classPar”) Accede a toutes les balises de classe classPar$(“#idPar”) Accede a la balise identifiee par idPar

Julien David (A101 - [email protected]) 2016 17 / 26

Page 18: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : les selecteurs

<p id=”idPar” class=”classPar”>Je suis un paragraphe.</p>

Acceder a des balises en Javascriptdocument.getElementsByTagName(”p”)document.getElementsByClassName(”classPar”)document.getElementById(”idPar”)

Acceder aux meme balises en JQuery$(“p”)$(“.classPar”)$(“#idPar”)

Julien David (A101 - [email protected]) 2016 18 / 26

Page 19: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : Getters et Setters

Fonctions de JqueryCertaines fonctions en JQuery peuvent :

Permettre d’acceder a une valeur (la fonction ne prend pas deparametres)De modifier une valeur (la fonction prend un ou plusieurs parametres)

Julien David (A101 - [email protected]) 2016 19 / 26

Page 20: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : Getters et Setters

Fonctions de Jquerytext() Lire/Initialiser le contenu texte d’une balisehtml() Lire/Initialiser le code HTML d’une balisecss() Lire/Initialiser le code CSS associe a une baliseattr() Lire/Initialiser la vleur de l’attirbut d’une balise

Julien David (A101 - [email protected]) 2016 20 / 26

Page 21: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : Ajout et Suppression

Fonctions de Jquery : ajoutappend() Ajoute du contenu apres le contenu d’une baliseprepend() Ajoute du contenu avant le contenu d’une baliseafter() Ajoute du contenu apres une balisebefore() Ajoute du contenu avant une baliseaddClass() Ajoute une class a une balise

Julien David (A101 - [email protected]) 2016 21 / 26

Page 22: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : Ajout et Suppressions de balises

Fonctions de Jquery : suppressionremove() Supprime une balise et son contenuempty() Supprime le contenu d’une baliseremoveClass() Supprime une classe d’une balise

remove()removeClass()empty()

Julien David (A101 - [email protected]) 2016 22 / 26

Page 23: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : les evenements

Les evenementsPour chaque balise du code HTML, il est possible :

de lui associer une fonction a executer (callback) pour un evenementdonne,mais aussi d’associer un callback a executer une fois l’evenementtermine.Enfin, il est possible de supprimer un callback associe a un evenement(methode off).

Julien David (A101 - [email protected]) 2016 23 / 26

Page 24: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : les evenements

Souris Clavier Formulaire Document/Fenetreclick keypress submit ready

dblclick keydown change resizemouseenter keyup focus scrollmouseleave blur

hoverCette liste n’est pas exhaustive.

Julien David (A101 - [email protected]) 2016 24 / 26

Page 25: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : le DOM

Fonctions de Jquery : deplacement dans le DOM (non exhaustif)parent() accede a la balise parent de celle selectionneechildren() accede aux balises inclues dans celle selectionneefind() acces cible aux balises inclues dans celle selectionneesiblings() accede aux balises ayant le meme parent que celle selectionneenext() accede aux sibling suivantprev() accede aux sibling precedent

Julien David (A101 - [email protected]) 2016 25 / 26

Page 26: Programmation Web Javascript et JQuerydavid/PROGWEB/javascript.pdf · Operateur suppl´ ementaire :´ === teste si la valeur et le type sont egaux.´ ... En javascript, les objets

JQuery : les effets

Fonctions de Jquery : les effetsshow()hide()toggle()fadeIn()fadeOut()fadeToggle()slideUp()slideDown()slideToggle()

Julien David (A101 - [email protected]) 2016 26 / 26