SlideShare une entreprise Scribd logo
1  sur  15
Télécharger pour lire hors ligne
Jquery : bibliothèque JavaScript
              Faites davantage avec moins de code!




                   Sujets spéciaux en TI
             Le Web 2.0 : concepts et outils
              École de technologie supérieure
                              par
                      Claude Coulombe


                             jQuery
                              Write Less,
                              Do More.
Tutoriel
jQuery                                               Automne 2008
jQuery - Write less, do more.

   jQuery est une bibliothèque JavaScript qui
   retient l’attention en raison de sa syntaxe
   astucieuse, de ses performances, de sa
   compacité et de son approche modulaire à
   base de plugins.

                        jQuery
                         Write Less,
                         Do More.


                http://www.jQuery.com

Tutoriel
jQuery                                   Automne 2008
jQuery – Concepts de base
•   Enveloppe logicielle (Wrapper) jQuery ou $
•   Emploi intelligent de sélecteurs basés sur CSS 3 pour
    sélectionner des objets DOM dans une page web
•   Retour par les fonctions jQuery de tableaux (Array)
    d’objets
•   Puissantes fonctions de manipulation d’objets du DOM
•   Opération sur l’ensemble des objets d’un tableau
    d’objets sans utiliser de boucle explicite
•   Chaînage des opérations
•   http://docs.jquery.com/Main_Page


Tutoriel
jQuery                                         Automne 2008
jQuery – Sélecteurs d’objets DOM
•   Sélection par identifiant (id)
    jQuery(quot;#monIdquot;)
•   Sélection par classe (CSS class)
    jQuery(quot;.maClassequot;)
•   Sélection par balise (tag)
    jQuery(quot;divquot;)
•   Documentation
     http://docs.jquery.com/Selectors


Tutoriel
jQuery                                  Automne 2008
jQuery – Filtres d’objets DOM
•   Emploi de filtres pour réduire les
    tableaux d’objets (opérateur “:”)

    jQuery(quot;div:eq(1)quot;)

    jQuery(quot;span:not(#monId)quot;)

    jQuery(quot;p:firstquot;).hasClass(quot;myClassquot;)

Tutoriel
jQuery                                   Automne 2008
jQuery – Manipulation d’objets DOM
•   Création d’un fragment de HTML et ajout à la fin du
    document
    jQuery(quot;<p>Qu’est-ce que jQuery?</p>quot;).appendTo(quot;bodyquot;)
•   Changement de CSS
    jQuery(quot;#monIdquot;).toggleClass(quot;surbrillancequot;)
    jQuery(quot;trquot;).toggleClass(quot;couleurLignequot;)
•   Changement de texte
    jQuery(quot;.classeTextequot;).text(quot;texte de remplacementquot;)
•   Documentation
    http://docs.jquery.com/Manipulation

Tutoriel
jQuery                                             Automne 2008
jQuery – Chaînage des opérations
 Chaque opération jQuery retourne une référence à un
 tableau d’objets auquel on peut appliquer une autre
 opération, voir un enchaînement d’opérations.


 Par exemple
   jQuery(quot;#monIdquot;).addClass(quot;maClasseCSSquot;);
   jQuery(quot;#monIdquot;).show();
   Devient
   jQuery(quot;#monIdquot;).addClass(quot;maClasseCSSquot;).show();


Tutoriel
jQuery                                     Automne 2008
jQuery – Boucle implicite
   Certaines instructions de jQuery réalisent des boucles
   implicites sur des ensembles de données.


   Par exemple :
    jQuery.each([0,1,2,3,4], function() {
     document.write(this + 1);
   });


   Écrit :
   12345


Tutoriel
jQuery                                         Automne 2008
jQuery – Initialisation au chargement
   Au moment du chargement d’une page jQuery fournit le
   contrôleur ready. Le contrôleur ready initie l’exécution du code
   lorsque le document est chargé mais sans attendre le
   chargement des images et l’exécution du contrôleur onload.


   jQuery(document).ready( function() {
           // code à exécuter au moment du chargement

   });


Note : Quand les contrôleurs ready et onload sont utilisés dans la même page, les 2 contrôleurs
   vont s’exécuter, le contrôleur ready s’exécutant avant le contrôleur onload.

Tutoriel
jQuery                                                                        Automne 2008
jQuery – Ajax
   jQuery fournit plusieurs fonctions Ajax pour
   différents besoins dont load(...) et ajax(...)

La fonction load(...)
jQuery('#nombre').load('/ServeurAjaxSimple/reponse');


Ou la fonction ajax(...)
jQuery.ajax( { type: quot;POSTquot;,
                 url: quot;/ServeurAjaxSimple/reponsequot;,
                 data: quot;param1=valeur1&param2=valeur2quot;,
                 success: function(rep){ /* callback */
                    alert( quot;Donnée traitées: quot; + rep ); }
Tutoriel
jQuery     });                                     Automne 2008
jQuery - Avantages




           jQuery
            GEEK




Tutoriel
jQuery                                                 Automne 2008
           * Source Clipart : http://www.clipart.com
jQuery - Avantages
•   Assure la compatibilité entre les différents fureteurs
•   Syntaxe efficace, peu verbeuse, instruction puissante*
•   Bibliothèque compacte (version de base 15 Ko)
•   Emploi intelligent de sélecteurs basés sur CSS 3 pour
    sélectionner des objets DOM dans une page web
•   Opération sur l’ensemble des objets d’un tableau d’objets
    sans utiliser de boucle explicite
•   Chaînage des opérations
•   Structure modulaire et extensible par plugiciels (Plugins)

                                       jQuery
                                          Write Less,
                                          Do More.


Tutoriel
jQuery                                                          Automne 2008
                      * D'où le slogan : Write Less, Do More.
jQuery - inconvénients
•     Les experts jQuery et JS sont rares...
•     JS trop permissif et difficile à déboguer
•     JS n’a pas été conçu pour de gros logiciels
•     Pas de bon support par les IDEs
•     Même modularisé, le code peut devenir très gros




Tutoriel
jQuery                                              Automne 2008
Ressources - Livres
jQuery in Action
par Bear Bibeault, Yehuda Katz
376 pages
Manning Publications
(7 février, 2008)
www.manning.com/bibeault/

Learning jQuery: Better Interaction Design and
Web Development with Simple JavaScript
Techniques
par Karl Swedberg, Jonathan Chaffer
380 pages
Packt Publishing
(29 juin, 2007)
www.packtpub.com/jQuery/book#indetail
Tutoriel
jQuery                                           Automne 2008
Questions




                           ?

Tutoriel
jQuery                                                  Automne 2008
            * Source Clipart : http://www.clipart.com

Contenu connexe

Tendances

Symfony with angular.pptx
Symfony with angular.pptxSymfony with angular.pptx
Symfony with angular.pptxEsokia
 
A la découverte de vue.js
A la découverte de vue.jsA la découverte de vue.js
A la découverte de vue.jsBruno Bonnin
 
comprendre angularJS en 10 minutes
comprendre angularJS en 10 minutescomprendre angularJS en 10 minutes
comprendre angularJS en 10 minutesDavid Bo
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)Yacine Rezgui
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langageStrasWeb
 
Introduction à Angularjs
Introduction à AngularjsIntroduction à Angularjs
Introduction à AngularjsRossi Oddet
 
Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Bruno Bonnin
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJSAbdoulaye Dieng
 
Vue, j’avais pas vu !
Vue, j’avais pas vu !Vue, j’avais pas vu !
Vue, j’avais pas vu !Bruno Bonnin
 
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JSENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JSHoracio Gonzalez
 
2014.12.11 - TECH CONF #3 - Présentation Bootstrap
2014.12.11 - TECH CONF #3 - Présentation Bootstrap2014.12.11 - TECH CONF #3 - Présentation Bootstrap
2014.12.11 - TECH CONF #3 - Présentation BootstrapTelecomValley
 
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Bruno Bonnin
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 Horacio Gonzalez
 
Angluars js
Angluars jsAngluars js
Angluars jsRYMAA
 
Atelier autour de UWA à ParisWeb 2007
Atelier autour de UWA à ParisWeb 2007Atelier autour de UWA à ParisWeb 2007
Atelier autour de UWA à ParisWeb 2007Netvibes
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hoodsvuillet
 
Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Clément Dubois
 

Tendances (20)

Symfony with angular.pptx
Symfony with angular.pptxSymfony with angular.pptx
Symfony with angular.pptx
 
jQuery vs AngularJS
jQuery vs AngularJS jQuery vs AngularJS
jQuery vs AngularJS
 
A la découverte de vue.js
A la découverte de vue.jsA la découverte de vue.js
A la découverte de vue.js
 
comprendre angularJS en 10 minutes
comprendre angularJS en 10 minutescomprendre angularJS en 10 minutes
comprendre angularJS en 10 minutes
 
AngularJS - Présentation (french)
AngularJS - Présentation (french)AngularJS - Présentation (french)
AngularJS - Présentation (french)
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langage
 
Introduction à Angularjs
Introduction à AngularjsIntroduction à Angularjs
Introduction à Angularjs
 
Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !Vue.js, même un dev java peut en faire !
Vue.js, même un dev java peut en faire !
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJS
 
Vue, j’avais pas vu !
Vue, j’avais pas vu !Vue, j’avais pas vu !
Vue, j’avais pas vu !
 
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JSENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 1/3 - HTTP, HTML, CSS JS
 
2014.12.11 - TECH CONF #3 - Présentation Bootstrap
2014.12.11 - TECH CONF #3 - Présentation Bootstrap2014.12.11 - TECH CONF #3 - Présentation Bootstrap
2014.12.11 - TECH CONF #3 - Présentation Bootstrap
 
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
Jug summer camp 2017 - Vue.js, même un dev java peut en faire !
 
Intro à angular
Intro à angularIntro à angular
Intro à angular
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3 ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
 
Angluars js
Angluars jsAngluars js
Angluars js
 
Atelier autour de UWA à ParisWeb 2007
Atelier autour de UWA à ParisWeb 2007Atelier autour de UWA à ParisWeb 2007
Atelier autour de UWA à ParisWeb 2007
 
Jquery : les bases
Jquery : les basesJquery : les bases
Jquery : les bases
 
GWT : under the hood
GWT : under the hoodGWT : under the hood
GWT : under the hood
 
Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)
 

Similaire à jQuery - GTI780 & MTI780 - ETS - A08

Jquery
JqueryJquery
Jquerykrymo
 
Aperçu de RequireJS
Aperçu de RequireJSAperçu de RequireJS
Aperçu de RequireJSVISEO
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2dhugomallet
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Tugdual Grall
 
Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Claude Coulombe
 
Gwt oxiane-novae-lr
Gwt oxiane-novae-lrGwt oxiane-novae-lr
Gwt oxiane-novae-lroxmed
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575kate2013
 
1-Introduction JQuery.pptx
1-Introduction JQuery.pptx1-Introduction JQuery.pptx
1-Introduction JQuery.pptxlaabid1
 
jQuery Mobile & Applications Web
jQuery Mobile & Applications WebjQuery Mobile & Applications Web
jQuery Mobile & Applications WebNicolas Hoffmann
 
GWT Approfondissement - GTI780 & MTI780 - ETS - A08
GWT Approfondissement - GTI780 & MTI780 - ETS - A08GWT Approfondissement - GTI780 & MTI780 - ETS - A08
GWT Approfondissement - GTI780 & MTI780 - ETS - A08Claude Coulombe
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidemaru.maru
 
Softshake 2013 - Du JavaScript propre ? Challenge accepted!
Softshake 2013 - Du JavaScript propre ? Challenge accepted!Softshake 2013 - Du JavaScript propre ? Challenge accepted!
Softshake 2013 - Du JavaScript propre ? Challenge accepted!OCTO Technology
 
HTML5, Spring, NoSQL et mobilité
HTML5, Spring, NoSQL et mobilitéHTML5, Spring, NoSQL et mobilité
HTML5, Spring, NoSQL et mobilitéJulien Dubois
 
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013Julien Jakubowski
 

Similaire à jQuery - GTI780 & MTI780 - ETS - A08 (20)

Jquery
JqueryJquery
Jquery
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
Aperçu de RequireJS
Aperçu de RequireJSAperçu de RequireJS
Aperçu de RequireJS
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2d
 
Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)Introduction aux RIA (Rich Internet Applications)
Introduction aux RIA (Rich Internet Applications)
 
Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08Introduction à GWT - GTI780 & MTI780 - ETS - A08
Introduction à GWT - GTI780 & MTI780 - ETS - A08
 
Gwt oxiane-novae-lr
Gwt oxiane-novae-lrGwt oxiane-novae-lr
Gwt oxiane-novae-lr
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575
 
1-Introduction JQuery.pptx
1-Introduction JQuery.pptx1-Introduction JQuery.pptx
1-Introduction JQuery.pptx
 
jQuery Mobile & Applications Web
jQuery Mobile & Applications WebjQuery Mobile & Applications Web
jQuery Mobile & Applications Web
 
Gradle_LyonJUG
Gradle_LyonJUGGradle_LyonJUG
Gradle_LyonJUG
 
js.pdf
js.pdfjs.pdf
js.pdf
 
GWT Approfondissement - GTI780 & MTI780 - ETS - A08
GWT Approfondissement - GTI780 & MTI780 - ETS - A08GWT Approfondissement - GTI780 & MTI780 - ETS - A08
GWT Approfondissement - GTI780 & MTI780 - ETS - A08
 
Gwt intro-101
Gwt intro-101Gwt intro-101
Gwt intro-101
 
Framework JavaScript Web - Brief techno
Framework JavaScript Web - Brief technoFramework JavaScript Web - Brief techno
Framework JavaScript Web - Brief techno
 
jQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-sidejQuery mobile / PhoneGap : contenus dynamiques client-side
jQuery mobile / PhoneGap : contenus dynamiques client-side
 
Softshake 2013 - Du JavaScript propre ? Challenge accepted!
Softshake 2013 - Du JavaScript propre ? Challenge accepted!Softshake 2013 - Du JavaScript propre ? Challenge accepted!
Softshake 2013 - Du JavaScript propre ? Challenge accepted!
 
HTML5, Spring, NoSQL et mobilité
HTML5, Spring, NoSQL et mobilitéHTML5, Spring, NoSQL et mobilité
HTML5, Spring, NoSQL et mobilité
 
Manualjquery
ManualjqueryManualjquery
Manualjquery
 
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013
Du JavaScript propre ? Challenge accepted ! @Devoxx France 2013
 

Plus de Claude Coulombe

Plates formes CLOM - importance des normes ouvertes et du logiciel libre
Plates formes CLOM - importance des normes ouvertes et du logiciel librePlates formes CLOM - importance des normes ouvertes et du logiciel libre
Plates formes CLOM - importance des normes ouvertes et du logiciel libreClaude Coulombe
 
Augmenter la persévérance dans les CLOM / MOOC? Possible!
Augmenter la persévérance dans les CLOM / MOOC? Possible!Augmenter la persévérance dans les CLOM / MOOC? Possible!
Augmenter la persévérance dans les CLOM / MOOC? Possible!Claude Coulombe
 
Séminaire polytechnique 12nov15
Séminaire polytechnique 12nov15Séminaire polytechnique 12nov15
Séminaire polytechnique 12nov15Claude Coulombe
 
Clom portfolios - ACFAS 2013
Clom portfolios - ACFAS 2013Clom portfolios - ACFAS 2013
Clom portfolios - ACFAS 2013Claude Coulombe
 
De nouvelles plateformes technologiques pour les CLOM
De nouvelles plateformes technologiques pour les CLOMDe nouvelles plateformes technologiques pour les CLOM
De nouvelles plateformes technologiques pour les CLOMClaude Coulombe
 
Infonuagique retour d'expérience
 Infonuagique   retour d'expérience Infonuagique   retour d'expérience
Infonuagique retour d'expérienceClaude Coulombe
 
De nouvelles plateformes technologiques pour les CLOM / MOOCs
De nouvelles plateformes technologiques pour les CLOM / MOOCsDe nouvelles plateformes technologiques pour les CLOM / MOOCs
De nouvelles plateformes technologiques pour les CLOM / MOOCsClaude Coulombe
 
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013
GWT, quoi de neuf?  Présentation au GDG/GTUG Montréal - 26 juin 2013GWT, quoi de neuf?  Présentation au GDG/GTUG Montréal - 26 juin 2013
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013Claude Coulombe
 
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012Claude Coulombe
 
Présentation GWT au JUG Montréal 14 avril 2011
Présentation GWT au JUG Montréal 14 avril 2011Présentation GWT au JUG Montréal 14 avril 2011
Présentation GWT au JUG Montréal 14 avril 2011Claude Coulombe
 
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09Tendances Futures du Web - GTI780 & MTI780 - ETS - A09
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Web social - GTI780 & MTI780 - ETS - A09
Web social - GTI780 & MTI780 - ETS - A09Web social - GTI780 & MTI780 - ETS - A09
Web social - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Normes avancées du Web - GTI780 & MTI780 - ETS - A09
Normes avancées du Web  - GTI780 & MTI780 - ETS - A09Normes avancées du Web  - GTI780 & MTI780 - ETS - A09
Normes avancées du Web - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
GWT Approfondissement - GTI780 & MTI780 - ETS - A09
GWT Approfondissement  - GTI780 & MTI780 - ETS - A09GWT Approfondissement  - GTI780 & MTI780 - ETS - A09
GWT Approfondissement - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Introduction à GWT - GTI780 & MTI780 - ETS - A09
Introduction à GWT - GTI780 & MTI780 - ETS - A09Introduction à GWT - GTI780 & MTI780 - ETS - A09
Introduction à GWT - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Web 2.0 & Génie Logiciel - GTI780 & MTI780 - ETS - A09
Web 2.0 & Génie Logiciel  - GTI780 & MTI780 - ETS - A09Web 2.0 & Génie Logiciel  - GTI780 & MTI780 - ETS - A09
Web 2.0 & Génie Logiciel - GTI780 & MTI780 - ETS - A09Claude Coulombe
 
Normes de base du Web GTI780 & MTI780 ETS A09
Normes de base du Web  GTI780 & MTI780  ETS   A09Normes de base du Web  GTI780 & MTI780  ETS   A09
Normes de base du Web GTI780 & MTI780 ETS A09Claude Coulombe
 
Ajax GTI780 & MTI780 ETS A09
Ajax  GTI780 & MTI780  ETS  A09Ajax  GTI780 & MTI780  ETS  A09
Ajax GTI780 & MTI780 ETS A09Claude Coulombe
 
Web 2.0 GTI780 & MTI780 ETS A09
Web 2.0  GTI780 & MTI780  ETS  A09Web 2.0  GTI780 & MTI780  ETS  A09
Web 2.0 GTI780 & MTI780 ETS A09Claude Coulombe
 

Plus de Claude Coulombe (20)

Plates formes CLOM - importance des normes ouvertes et du logiciel libre
Plates formes CLOM - importance des normes ouvertes et du logiciel librePlates formes CLOM - importance des normes ouvertes et du logiciel libre
Plates formes CLOM - importance des normes ouvertes et du logiciel libre
 
Augmenter la persévérance dans les CLOM / MOOC? Possible!
Augmenter la persévérance dans les CLOM / MOOC? Possible!Augmenter la persévérance dans les CLOM / MOOC? Possible!
Augmenter la persévérance dans les CLOM / MOOC? Possible!
 
Séminaire polytechnique 12nov15
Séminaire polytechnique 12nov15Séminaire polytechnique 12nov15
Séminaire polytechnique 12nov15
 
Clom portfolios - ACFAS 2013
Clom portfolios - ACFAS 2013Clom portfolios - ACFAS 2013
Clom portfolios - ACFAS 2013
 
De nouvelles plateformes technologiques pour les CLOM
De nouvelles plateformes technologiques pour les CLOMDe nouvelles plateformes technologiques pour les CLOM
De nouvelles plateformes technologiques pour les CLOM
 
Infonuagique retour d'expérience
 Infonuagique   retour d'expérience Infonuagique   retour d'expérience
Infonuagique retour d'expérience
 
De nouvelles plateformes technologiques pour les CLOM / MOOCs
De nouvelles plateformes technologiques pour les CLOM / MOOCsDe nouvelles plateformes technologiques pour les CLOM / MOOCs
De nouvelles plateformes technologiques pour les CLOM / MOOCs
 
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013
GWT, quoi de neuf?  Présentation au GDG/GTUG Montréal - 26 juin 2013GWT, quoi de neuf?  Présentation au GDG/GTUG Montréal - 26 juin 2013
GWT, quoi de neuf? Présentation au GDG/GTUG Montréal - 26 juin 2013
 
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012
L'infonuagique éducative – Promesses et Défis! - Colloque tice 04mai2012
 
Présentation GWT au JUG Montréal 14 avril 2011
Présentation GWT au JUG Montréal 14 avril 2011Présentation GWT au JUG Montréal 14 avril 2011
Présentation GWT au JUG Montréal 14 avril 2011
 
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09Tendances Futures du Web - GTI780 & MTI780 - ETS - A09
Tendances Futures du Web - GTI780 & MTI780 - ETS - A09
 
Web social - GTI780 & MTI780 - ETS - A09
Web social - GTI780 & MTI780 - ETS - A09Web social - GTI780 & MTI780 - ETS - A09
Web social - GTI780 & MTI780 - ETS - A09
 
Normes avancées du Web - GTI780 & MTI780 - ETS - A09
Normes avancées du Web  - GTI780 & MTI780 - ETS - A09Normes avancées du Web  - GTI780 & MTI780 - ETS - A09
Normes avancées du Web - GTI780 & MTI780 - ETS - A09
 
GWT Approfondissement - GTI780 & MTI780 - ETS - A09
GWT Approfondissement  - GTI780 & MTI780 - ETS - A09GWT Approfondissement  - GTI780 & MTI780 - ETS - A09
GWT Approfondissement - GTI780 & MTI780 - ETS - A09
 
Introduction à GWT - GTI780 & MTI780 - ETS - A09
Introduction à GWT - GTI780 & MTI780 - ETS - A09Introduction à GWT - GTI780 & MTI780 - ETS - A09
Introduction à GWT - GTI780 & MTI780 - ETS - A09
 
Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09Ajax en Java - GTI780 & MTI780 - ETS - A09
Ajax en Java - GTI780 & MTI780 - ETS - A09
 
Web 2.0 & Génie Logiciel - GTI780 & MTI780 - ETS - A09
Web 2.0 & Génie Logiciel  - GTI780 & MTI780 - ETS - A09Web 2.0 & Génie Logiciel  - GTI780 & MTI780 - ETS - A09
Web 2.0 & Génie Logiciel - GTI780 & MTI780 - ETS - A09
 
Normes de base du Web GTI780 & MTI780 ETS A09
Normes de base du Web  GTI780 & MTI780  ETS   A09Normes de base du Web  GTI780 & MTI780  ETS   A09
Normes de base du Web GTI780 & MTI780 ETS A09
 
Ajax GTI780 & MTI780 ETS A09
Ajax  GTI780 & MTI780  ETS  A09Ajax  GTI780 & MTI780  ETS  A09
Ajax GTI780 & MTI780 ETS A09
 
Web 2.0 GTI780 & MTI780 ETS A09
Web 2.0  GTI780 & MTI780  ETS  A09Web 2.0  GTI780 & MTI780  ETS  A09
Web 2.0 GTI780 & MTI780 ETS A09
 

jQuery - GTI780 & MTI780 - ETS - A08

  • 1. Jquery : bibliothèque JavaScript Faites davantage avec moins de code! Sujets spéciaux en TI Le Web 2.0 : concepts et outils École de technologie supérieure par Claude Coulombe jQuery Write Less, Do More. Tutoriel jQuery Automne 2008
  • 2. jQuery - Write less, do more. jQuery est une bibliothèque JavaScript qui retient l’attention en raison de sa syntaxe astucieuse, de ses performances, de sa compacité et de son approche modulaire à base de plugins. jQuery Write Less, Do More. http://www.jQuery.com Tutoriel jQuery Automne 2008
  • 3. jQuery – Concepts de base • Enveloppe logicielle (Wrapper) jQuery ou $ • Emploi intelligent de sélecteurs basés sur CSS 3 pour sélectionner des objets DOM dans une page web • Retour par les fonctions jQuery de tableaux (Array) d’objets • Puissantes fonctions de manipulation d’objets du DOM • Opération sur l’ensemble des objets d’un tableau d’objets sans utiliser de boucle explicite • Chaînage des opérations • http://docs.jquery.com/Main_Page Tutoriel jQuery Automne 2008
  • 4. jQuery – Sélecteurs d’objets DOM • Sélection par identifiant (id) jQuery(quot;#monIdquot;) • Sélection par classe (CSS class) jQuery(quot;.maClassequot;) • Sélection par balise (tag) jQuery(quot;divquot;) • Documentation http://docs.jquery.com/Selectors Tutoriel jQuery Automne 2008
  • 5. jQuery – Filtres d’objets DOM • Emploi de filtres pour réduire les tableaux d’objets (opérateur “:”) jQuery(quot;div:eq(1)quot;) jQuery(quot;span:not(#monId)quot;) jQuery(quot;p:firstquot;).hasClass(quot;myClassquot;) Tutoriel jQuery Automne 2008
  • 6. jQuery – Manipulation d’objets DOM • Création d’un fragment de HTML et ajout à la fin du document jQuery(quot;<p>Qu’est-ce que jQuery?</p>quot;).appendTo(quot;bodyquot;) • Changement de CSS jQuery(quot;#monIdquot;).toggleClass(quot;surbrillancequot;) jQuery(quot;trquot;).toggleClass(quot;couleurLignequot;) • Changement de texte jQuery(quot;.classeTextequot;).text(quot;texte de remplacementquot;) • Documentation http://docs.jquery.com/Manipulation Tutoriel jQuery Automne 2008
  • 7. jQuery – Chaînage des opérations Chaque opération jQuery retourne une référence à un tableau d’objets auquel on peut appliquer une autre opération, voir un enchaînement d’opérations. Par exemple jQuery(quot;#monIdquot;).addClass(quot;maClasseCSSquot;); jQuery(quot;#monIdquot;).show(); Devient jQuery(quot;#monIdquot;).addClass(quot;maClasseCSSquot;).show(); Tutoriel jQuery Automne 2008
  • 8. jQuery – Boucle implicite Certaines instructions de jQuery réalisent des boucles implicites sur des ensembles de données. Par exemple : jQuery.each([0,1,2,3,4], function() { document.write(this + 1); }); Écrit : 12345 Tutoriel jQuery Automne 2008
  • 9. jQuery – Initialisation au chargement Au moment du chargement d’une page jQuery fournit le contrôleur ready. Le contrôleur ready initie l’exécution du code lorsque le document est chargé mais sans attendre le chargement des images et l’exécution du contrôleur onload. jQuery(document).ready( function() { // code à exécuter au moment du chargement }); Note : Quand les contrôleurs ready et onload sont utilisés dans la même page, les 2 contrôleurs vont s’exécuter, le contrôleur ready s’exécutant avant le contrôleur onload. Tutoriel jQuery Automne 2008
  • 10. jQuery – Ajax jQuery fournit plusieurs fonctions Ajax pour différents besoins dont load(...) et ajax(...) La fonction load(...) jQuery('#nombre').load('/ServeurAjaxSimple/reponse'); Ou la fonction ajax(...) jQuery.ajax( { type: quot;POSTquot;, url: quot;/ServeurAjaxSimple/reponsequot;, data: quot;param1=valeur1&param2=valeur2quot;, success: function(rep){ /* callback */ alert( quot;Donnée traitées: quot; + rep ); } Tutoriel jQuery }); Automne 2008
  • 11. jQuery - Avantages jQuery GEEK Tutoriel jQuery Automne 2008 * Source Clipart : http://www.clipart.com
  • 12. jQuery - Avantages • Assure la compatibilité entre les différents fureteurs • Syntaxe efficace, peu verbeuse, instruction puissante* • Bibliothèque compacte (version de base 15 Ko) • Emploi intelligent de sélecteurs basés sur CSS 3 pour sélectionner des objets DOM dans une page web • Opération sur l’ensemble des objets d’un tableau d’objets sans utiliser de boucle explicite • Chaînage des opérations • Structure modulaire et extensible par plugiciels (Plugins) jQuery Write Less, Do More. Tutoriel jQuery Automne 2008 * D'où le slogan : Write Less, Do More.
  • 13. jQuery - inconvénients • Les experts jQuery et JS sont rares... • JS trop permissif et difficile à déboguer • JS n’a pas été conçu pour de gros logiciels • Pas de bon support par les IDEs • Même modularisé, le code peut devenir très gros Tutoriel jQuery Automne 2008
  • 14. Ressources - Livres jQuery in Action par Bear Bibeault, Yehuda Katz 376 pages Manning Publications (7 février, 2008) www.manning.com/bibeault/ Learning jQuery: Better Interaction Design and Web Development with Simple JavaScript Techniques par Karl Swedberg, Jonathan Chaffer 380 pages Packt Publishing (29 juin, 2007) www.packtpub.com/jQuery/book#indetail Tutoriel jQuery Automne 2008
  • 15. Questions ? Tutoriel jQuery Automne 2008 * Source Clipart : http://www.clipart.com