Qu'est-ce que JQuery?

Documents pareils
Document Object Model (DOM)

TP JAVASCRIPT OMI4 TP5 SRC

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Bonnes pratiques de développement JavaScript

Présentation du Framework BootstrapTwitter

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

DOM - Document Object Model

1. Installation du Module

HTML, CSS, JS et CGI. Elanore Elessar Dimar

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Devenez un véritable développeur web en 3 mois!

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Programmation Web. Madalina Croitoru IUT Montpellier

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Comment développer et intégrer un module à PhpMyLab?

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Guide de configuration

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Manuel du composant CKForms Version 1.3.2

HTML5 et CSS3 pour des sites Responsive Web Design

Optimiser pour les appareils mobiles

SYSTÈMES D INFORMATIONS

Freeway 7. Nouvelles fonctionnalités

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Techniques de Programmation pour Internet

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Spétechs Mobile. D e r n i è r e m i s e à j o u r : a o û t 2014

E-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1

Optimiser les performances d un site web. Nicolas Chevallier Camille Roux

ISTEX-SNU. ISTEX en quelques clics dans votre portail documentaire. Séminaire technique ISTEX 18 mars 2015

Création d un formulaire de contact Procédure

Ajax, RIA et HTML Prise en charge d Ajax

Création de formulaires interactifs

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques

Les outils de création de sites web

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

2 LES BASES DU HTML 19 Qu est-ce que le HTML? 20 De quand date le HTML? 20 Écrire son propre code HTML 22

Table des matières Hakim Benameurlaine 1

Démonstration de la mise en cache via HTML 5 sur iphone

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

KompoZer. Composition du site : _ une page d'accueil : index.html. _ une page pour la théorie : theorie.html. _ une page pour les photos : photos.

Programmation Web. Introduction

Développement des Systèmes d Information

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Campagnes d ings v.1.6

CREATION d UN SITE WEB (INTRODUCTION)

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Bien architecturer une application REST

WorkflowGen 6.0 Guide de mise à jour

Hébergement de site web Damien Nouvel

Projet en nouvelles technologies de l information et de la communication

HTML. Notions générales

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

SPECIFICITES TECHNIQUES DES FORMATS PUBLICITAIRES

Guide de réalisation d une campagne marketing

Gestion d identités PSL Exploitation IdP Authentic

Gestion de contenu d un site web avec TYPO3 Manuel de l administrateur

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Gestion Électronique de Documents et XML. Master 2 TSM

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

Chapitre 1. Prise en main

Prototyper un site web avec Awestruct et Boostrap

WIMS. Découvrir et utiliser

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

{less} Guide de démarrage

Evaluation et mise en place d un serveur de messages pour Chamilo 2.0

Introduction aux concepts d ez Publish

Optimiser les s marketing Les points essentiels

Stocker des données sur Amazon S3

Les outils actuels permettent-ils d automatiser la production de cartes? De quels outils dispose-t-on?

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)

Formation Webmaster : Création de site Web Initiation + Approfondissement

Guide Reseller Onbile

NAMEBAY PRO. votre site de revente de noms de domaine en marque blanche. Documentation technique

HTML5, CSS3 et JavaScript Développez vos sites pour les terminaux mobiles

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

Webmaster / Webdesigner / Wordpress

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

Formulaire pour envoyer un mail

Sommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6

Serveur d Applications Web : WebObjects

Diffuser un contenu sur Internet : notions de base... 13

eps Network Services Alarmes IHM

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

Spétechs Mobile. Octobre 2013

RESPONSIVE WEB DESIGN

FICHE TECHNIQUE. Secondaire et postsecondaire

Intégrateur Web HTML5 CSS3

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Bases de données et Interfaçage Web

Transcription:

Qu'est-ce que JQuery? JQuery est une bibliothèque de fonctions en JavaScript. C'est une librairie légère : "écrire moins, faire plus" Cette bibliothèque contient les fonctionnalités suivantes: Sélection des éléments HTML Manipulation des éléments HTML Manipulation du CSS Fonctions d'événements HTML Effets JavaScript et animations Parcours et modification du DOM Ajax 1/21

Ajouter JQuery à vos pages La bibliothèque jquery est stockée dans un fichier unique en JavaScript, contenant toutes les fonctions jquery. <head> <script type="text/javascript" src="jquery.js"></script> </head> 2/21

Exemple de base en jquery <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").hide(); }); }); </script> </head> <body> <h2>ceci est un titre</h2> <p>ceci est un paragraphe.</p> <p>un autre paragraphe.</p> <button>cliquer ici</button> </body> </html> 3/21

Télécharger JQuery Deux versions de JQuery sont disponibles : une version minimale et une autre non compressée (pour débugger ou lire) Les deux versions sont disponibles à l'adresse : jquery.com Si l'on ne veux pas stocker localement la librairie elle est disponible en ligne: <head> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> </script> </head> 4/21 <head> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js"> </script> </head>

JQuery : syntaxe Avec Jquery, vous sélectionnez des éléments HTML et vous effectuez des actions. Exemples: $(this).hide() : pour cacher l'élément HTML courant. $("#test").hide() : pour cacher l'élément HTML dont l'id est #test. $("p").hide() : pour cacher tous les éléments HTML de type p. $(".test").hide() ; pour cacher tous les éléments possédant la classe "test". 5/21

JQuery : syntaxe La syntaxe de jquery est faite sur mesure pour la sélection des éléments HTML et effectuer certaines actions. La syntaxe de base est la suivante : $ (sélecteur)). action ( un signe $ pour définir JQuery un (sélecteur) afin de trouver les éléments HTML une action() JQuery a effectuer JQuery utilise une combinaison de XPATH et CSS pour la sélection des éléments 6/21

La fonction ready de l'objet document Toutes les fonctions JQuery se situent dans cette fonction : $(document).ready(function(){ // Toutes les fonctions jquery devront se trouver ici }); Il s'agit d'éviter d'exécuter du code JQuery avant le chargement complet de la page (erreurs pour cacher des éléments ou récupérér la taille d'une image avant son chargement) 7/21

JQuery : sélecteurs Les sélecteurs jquery vous permettent de sélectionner et de manipuler des éléments HTML en tant que groupe ou comme un seul élément. Il est possible de récupérer des éléments HTML (ou groupe) par nom, attribut ou contenu Sélecteur d'éléments JQuery utilise la syntaxe CSS pour sélectionner des éléments : 8/21 $("p") sélectionne tous les éléments p $("p.intro") sélectionne les éléments p possédant la classe intro $("p#demo") sélectionne l'unique élément p ayant pour ID demo

Le sélecteur CSS permet de modifier des propriétés pour des 9/21éléments HTML Sélecteur d'attributs JQuery utilise la syntaxe XPATH pour sélectionner des attributs : $("[href]") sélectionne tous les éléments avec un attribut href $("[href='#']") sélectionne tous les éléments possédant un attribut href ayant pour valeur '#' $("[href!='#']") sélectionne tous les élémnts possédant un attribut href différent de '#' $("[href$='.jpg']") sélectionne tous les éléments possédant un attribut href dont la valeur se termine par '.jpg' Sélecteur CSS

récapitulatif des sélecteurs Sélecteur Exemple Description * $("*") tous les éléments #id $("#lastname") l'élément avec l'id lastname.class $(".intro") tous les éléments avec la classe "intro" element $("p") tous les éléments p.class.class $(".intro.demo") tous les éléments avec les classes "intro" et "demo" :first $("p:first") le premier élément p :last $("p:last") le dernier élément p :even $("tr:even") les lignes tr paires :odd $("tr:odd") les lignes tr impaires :eq(index) $("ul li:eq(3)") le 4 ème élément d'une liste (l'index commence à 0) :gt(no) $("ul li:gt(3)") les éléments d'une liste dont l'index est supérieur (strict) à 3 :lt(no) $("ul li:lt(3)") les éléments d'une liste dont l'index est inférieur (strict) à 3 :not(selector) $("input:not(:empty)") tous les éléments qui ne sont pas vides :header $(":header") tous les éléments h1, h2... :animated $(":animated") tous les éléments animés :contains(text) $(":contains('un texte')") tous les éléments contenant le texte 'un texte' :empty $(":empty") tous les éléments ne contenant pas d'éléments fils :hidden $("p:hidden") tous les éléments p cachés :visible $("table:visible") toutes les tableaux visibles s1,s2,s3 $("th,td,.intro") à deviner... 10/21

récapitulatif des sélecteurs Sélecteur Exemple Description [attribute] $("[href]") tous les éléments ayant un attribut href [attribute=value] $("[href='default.htm']") tous les éléments possédant un attribut href dont la valeur est "default.htm" [attribute!=value] $("[href!='default.htm']") tous les éléments possédant un attribut href dont la valeur différente "default.htm" [attribute$=value] $("[href$='.jpg']") tous les éléments possédant un attribut href dont la valeur se termine par ".jpg" :input $(":input") tous les éléments de type input (formulaires) :text $(":text") tous les éléments input de type 'text' :password $(":password") tous les éléments input de type 'password' :radio $(":radio") tous les éléments input de type 'radio' :checkbox $(":checkbox") tous les éléments input de type 'checkbox' :submit $(":submit") tous les éléments input de type 'submit' :reset $(":reset") tous les éléments input de type 'reset' :button $(":button") tous les éléments input de type 'button' :image $(":image") tous les éléments input de type 'image' :file $(":file") tous les éléments input de type 'fichier' :enabled $(":enabled") tous les éléments input activés :disabled $(":disabled") tous les éléments input désactivés :selected $(":selected") tous les éléments input sélectionnés :checked $(":checked") tous les éléments input cochés 11/21

Traitement des événements en JQuery Le code associé aux événements sont à placer dans la partie head 12/21 <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $("p").hide(); });}); </script> </head> <body> <h2>c'est un titre</h2> <p>là un paragraphe.</p> <p>un autre paragraphe.</p> <button>cliquez-moi</button> </body> </html>

Traitement des événements en JQuery Bien entendu les fonctions peuvent être mises dans un fichier séparé <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="my_jquery_functions.js"></script> </head> 13/21

Conflits de nom JQuery Le caractère $ est utilisé comme raccourci par jquery. D'autres librairies JavaScript utilisent aussi ce caractère pour leurs fonctions. La fonction noconflict() spécifie un nom particulier (comme jq) au lieu d'utiliser le $. 14/21 <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> var jq=jquery.noconflict(); jq(document).ready(function(){ jq("button").click(function(){ jq("p").hide(); }); }); </script> </head>

Récapitulatif des événements en JQuery Pour plus de détail : http://w3schools.com/jquery/jquery_ref_events.asp 15/21

Effets avec JQuery Fonction animate() clearqueue() delay() dequeue() fadein() fadeout() fadeto() hide() queue() show() slidedown() slidetoggle() slideup() stop() toggle() Description effectue une animation (avec des propriétés css) sur des éléments supprime toutes les fonctions dans la file d'attente pour l'élément sélectionné définit un délai pour toutes les fonctions en file d'attente pour l'élément sélectionné exécute les fonctions suivantes en file d'attente pour l'élément sélectionné change l'opacité des éléments sélectionnés afin de les rendre visibles change l'opacité des éléments sélectionnés afin de les rendre invisibles change l'opacité des éléments sélectionnés jusqu'à une certaine valeur cache les éléments sélectionnés affiche les fonctions dans la file d'attente pour l'élément sélectionné affiche les éléments sélectionnés change la hauteur des éléments sélectionnés afin de les rendre visibles bascule entre slideup() et slidedown() pour les éléments sélectionnés change la hauteur des éléments sélectionnés afin de les rendre invisibles stoppe une animation pour les éléments sélectionnés bascule entre hide() et show() pour les éléments selectionnés 16/21

Fonctions Callback avec JQuery Une fonction Callback est lancée après la fin de l'animation en cours d'exécution. Les instructions en JavaScript sont exécutées ligne par ligne. Cependant, avec des animations, la prochaine ligne de code peut être exécutée même si l'animation n'est pas terminée. Cela peut créer des erreurs. Pour éviter cela, vous pouvez créer une fonction Callback. La fonction Callback ne sera exécutée qu'à la fin de l'animation. La syntaxe est la suivante : $(selector).hide(speed,callback) $("p").hide(1000,function(){ alert("le paragraphe est maintenant caché"); }); 17/21

Manipulation HTML avec JQuery La méthode html permet de changer le contenu d'un élément (équivalent au innerhtml). La syntaxe est la suivante : $(selector).html(content) D'autres fonctions existent (pour ajouter de nouveaux nœuds) à l'adresse : http://w3schools.com/jquery/jquery_ref_html.asp 18/21

Méthodes CSS avec JQuery La principale fonction pour modifier le style d'un élément est la méthode css(). Elle possède 3 prototypes différents :.css(name) : retourne la propriété name.css(name,value) : fixe la valeur d'une propriété.css({properties}) : pour en fixer plusieurs $("p").css("background-color","yellow"); $("p").css({"background-color":"yellow","font-size":"200%"}); 19/21

AJAX avec JQuery Requête $(selector).load(url,data,callback) $.ajax(options) $.get(url,data,callback,type) $.post(url,data,callback,type) $.getscript(url,callback) Description charge des données distantes à l'intérieur des éléments charge des données distantes dans un objet xmlhttprequest charge des données distantes en utilisant la méthode get charge des données distantes en utilisant la méthode post charge et exécute un fichier javascript (selector) : un élément en Jquery (url) : l'url (address) des données à charger (data) : les données à envoyer au serveur sous la forme cle/valeur (callback) : fonction Callback à exécuter lorsque les données sont chargées (type) : valeur de retour de la requête (html,xml,json,jasonp,script,text) (options) : toutes les options (sous la forme cle/valeur) pour une requête AJAX 20/21 <html> <head> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ htmlobj=$.ajax({url:"test1.txt",async:false});//plus de détail: http://w3schools.com/jquery/ajax_ajax.asp $("div").html(htmlobj.responsetext); }); }); </script> </head> <body> <div><h2>let AJAX change this text</h2></div> <button>change Content</button> </body> </html>

Conclusions JQuery est une librairie JavaScript (il en existe d'autres) JQuery simplifie la programmation en JavaScript (écriture condensée) JQuery est facile à apprendre Des extensions sont disponibles (widgets(accordion, datepicker, progressbar, sliders,...), interactions(drag & drop, resizable, sortable,...)) à l'adresse: http://jqueryui.com/ 21/21