Cours 1 Premiers pas avec jquery : sélecteurs et modifieurs

Documents pareils
TP JAVASCRIPT OMI4 TP5 SRC

Présentation du Framework BootstrapTwitter

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

Document Object Model (DOM)

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Programmation Web. Madalina Croitoru IUT Montpellier

Soon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions

HTML. Notions générales

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

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

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

Optimiser pour les appareils mobiles

DOM - Document Object Model

Webmaster / Webdesigner / Wordpress

HTML, CSS, JS et CGI. Elanore Elessar Dimar

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

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

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

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

Responsive Web Design. La Rochelle, Avril 2014

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

Peut être utilisée à l intérieur du site où se trouve la liste de référence.

Manuel de mise en page de l intérieur de votre ouvrage

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

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

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

HTML5 et CSS3 pour des sites Responsive Web Design

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

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

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

Création d un formulaire de contact Procédure

Inscription de votre site sur Google Configuration du sitemap et de Webmaster Tools pour PrestaBox

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

Guide de réalisation d une campagne marketing

Initiation à html et à la création d'un site web

Un jour, une question Réponse à une problématique issue de la liste GTA *

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

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

Tutoriel : Feuille de style externe

Version 7.1_5.1. Release Notes

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

Ajax, RIA et HTML Prise en charge d Ajax

L envoi d un formulaire par courriel. Configuration requise Mail Texte Mail HTML Check-list

PHP 5.4 Développez un site web dynamique et interactif

Création et utilisation de formulaire pdf

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

Optimiser les s marketing Les points essentiels

Formation HTML / CSS. ar dionoea

Programmation Web TP1 - HTML

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

Le stockage local de données en HTML5

Bureautique Initiation Excel-Powerpoint

Projet en nouvelles technologies de l information et de la communication

SYSTÈMES D INFORMATIONS

ING & NEWSLETTER NEWSLETTER RESPONSIVE

{less} Guide de démarrage

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION AU CMS MODX

creer votre site internet en html/css

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

PARAMETRER INTERNET EXPLORER 9

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Formation : WEbMaster

TP 5 Les CMS, la forme et le fond Internet et Outils (IO2)

145A, avenue de Port Royal, Bonaventure (Québec) G0C 1E0 Sans frais :

Compte-rendu de projet de Système de gestion de base de données

1. Installation du Module

Bonnes pratiques de développement JavaScript

Chapitre 1. Prise en main

Travaux dirigés n 10

Notes pour l utilisation d Expression Web

Logiciel : GLPI Version : SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003.

Création de formulaires interactifs

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

Survol des nouveautés

Nouveautés joomla 3 1/14

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Comment créer son propre monitoring. (Version simple PHP)

Audit de site web. Accessibilité

Guide de création de site web optimisé

PARAMETRAGE D INTERNET EXPLORER POUR L UTILISATION DE GRIOTTE

Support Web Administration et gestion des portails web des facultés - Université A.Mira Béjaia -

Normes techniques 2011

Manuel du composant CKForms Version 1.3.2

Malgré son aspect spartiate, Freeplane offre de nombreuses fonctionnalités en particulier dans le domaine de la diffusion des cartes sur le Web.

Manuel de l administrateur

Freeway 7. Nouvelles fonctionnalités

DRUPAL Réalisez des développements professionnels avec PHP (2ième édition)

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

RESPONSIVE WEB DESIGN

Les outils de création de sites web

1 è r e étape : créer sa base de d o n n é e s

Bernard Lecomte. Débuter avec HTML

Créateur de sites Internet. Développeur de logiciels.

Service des ressources informatiques - Conseil Scolaire de District Catholique Centre-Sud Page 1

Créer un site Web : mode d emploi Sous SPIP, avec le squelette «établissement» de l académie de Versailles

Transcription:

Licence STIC IUT de Marne-la-Vallée 12/03/2015 Cours de jquery Cours 1 Premiers pas avec jquery : sélecteurs et modifieurs Philippe Gambette

Organisation pratique Contact - Courriel : philippe.gambette@gmail.com - Avant ou après le cours. - Posez des questions, demandez des exercices d'entrainement! Notes et devoirs Travail personnel : - refaites les exercices de TP et TD mal compris - pratiquez en expérimentant sur vos projets web Pendant les cours : - petits tests de début de cours ou TP - examen / TP noté le 4 juin ou le 11/12 juin

Sources Cours de Jean-Loup Guillaume http://jlguillaume.free.fr/www/documents/teaching/ntw1213/li385_c5_jquery.pdf Cours de programmation web avancée de Thierry Hamon https://perso.limsi.fr/hamon/pwa-20122013/cours/jquery.pdf jquery : écrivez moins pour faire plus!, de tit_toinou http://openclassrooms.com/courses/jquery-ecrivez-moins-pour-faire-plus jquery, Le guide complet, de Guillaume Allain et Timothy Stubbs Javascript & Ajax pour les nuls, d Andy Harris

Introduction Jquery = bibliothèque Javascript pour simplifier le développement de sites web interactifs Présenté pour la première fois en janvier 2006 par son créateur John Resig Première version stable en août 2006 Téléchargeable sur http://jquery.com/download/

Introduction Jquery = bibliothèque Javascript pour simplifier le développement de sites web interactifs Présenté pour la première fois en janvier 2006 par son créateur John Resig Première version stable en août 2006 Téléchargeable sur http://jquery.com/download/

Introduction Jquery = bibliothèque Javascript pour simplifier le développement de sites web interactifs Présenté pour la première fois en janvier 2006 par son créateur John Resig Première version stable en août 2006 Téléchargeable sur http://jquery.com/download/ https://www.airpair.com/angularjs/posts/jquery-angularjs-comparison-migration-walkthrough

Avantages Puissante Légère (94 Ko), avec utilisation possible du fichier sur les serveurs de Google : https://developers.google.com/speed/libraries/devguide#jquery Multiplateforme : évite les problèmes de compatibilité entre navigateurs Gratuite et open source Facilite la sélection d éléments d une page web Facilite l AJAX S écrit en dehors du code HTML

Principe de jquery 1. Sélectionner une partie du document. 2. Agir dessus Objet jquery = ensemble de noeuds du DOM (Document Object Model) Q1 ensemble de balises du document les objets jquery se créent avec la fonction jquery() abrégée en $() : - prend en entrée une chaîne de caractères contenant un «sélecteur» - renvoie en sortie un objet jquery Exemple : 1. $("div") renvoie un objet contenant tous les "div" du document. 2. $("div").hide() cache tous les "div" du document.

En pratique Insérer le lien vers la bibliothèque jquery Q2 <SCRIPT TYPE="text/javascript" SRC="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> Attendre le chargement de la page : <SCRIPT TYPE="text/javascript"> $(document).ready(function(){ }) </SCRIPT> Q3 Q4

Les abréviations jquery() s abrège en $() attention aux conflits avec d autres librairies : http://learn.jquery.com/using-jquery-core/avoid-conflicts-other-libraries/ $(document).ready(function(){ }) s abrège en $(function(){ })

SÉLECTIONNER http://api.jquery.com/category/selectors/

Sélection d éléments Possibilité de sélectionner : par type de bloc par identifiant Similaire à sélection CSS! par classe en combinant les critères en filtrant sur les noms d attributs en faisant référence aux positions relatives dans le DOM en ne récupérant qu un seul élément parmi les objets sélectionnés en filtrant parmi les objets sélectionnés

Sélection d éléments par type de bloc, identifiant, classe Pour renvoyer toutes les balises : $("*") Pour renvoyer tous les <div> de la page : $("div") $("div").length donne le nombre de div dans la page. // <span id="test">jl</span> $("#test") // <ul class="test">jl</ul> $(".test")

Sélection d éléments par combinaison de critères // tous les divs de classe main $("div.main") // tous les tableaux d'identifiant data $("table#data") // objets d'id "content" ou de classe "menu" // attention à la position des guillemets $("#content,.menu")

Sélection d éléments filtrée // Recherche de p contenant des objets avec classe header // rendre visible ces objets $("p").find(".header").show(); // similaire à : // $(selecteur, contexte) $(".header", $("p")).show();

Sélection d éléments filtrée par numéro d élément // récupération de tous les éléments + extraction $("div").get(2) $("div")[2] // équivalent // récupération d'un seul élément $("div").eq(2) // en partant de la fin $("div").eq(-2)

Sélection d éléments fondée sur la structure du DOM Possibilité d'atteindre : les fils (>) ; tous les descendants (espace) ; le (+) ou les (~) frères suivants. <ul> <li>item 1</li> <li>item 2</li> <li class="trois">item 3 <ol><li>3.1</li></ol></li> <li>item 4 <ol><li>4.1</li></ol></li> <li>item 5</li> </ul> // cache 4 et 5 $('li.trois ~ li').hide(); // cache 4 $('li.trois + li').hide(); // cache les <ol> $("ul ol") // ne cache rien $("ul > ol")

Sélection d éléments fondée sur la structure du DOM Possibilité de sélectionner de manière plus précise : frère, enfants, parents utilisation de fonctions // frère suivant.next(expr) // frère précédent.prev(expr) // frères.siblings(expr) // enfants.children(expr) // père.parent(expr)

Autres sélecteurs // premier paragraphe p:first // dernier élément de liste li:last // quatrième lien a:nth(3) ou a:eq(3) // paragraphes pairs ou impairs p:even or p:odd every // Tous les liens à partir (greater than) du quatrième ou avant (lower than) a:gt(3) or a:lt(4) // Liens qui contiennent le mot click a:contains('click')

Sélecteurs de visibilité // si l'élément est visible $("div:visible") // sinon $("div:hidden")

Sélecteurs de formulaire // sélectionner les cases à cocher $("input:checkbox") // sélectionner les boutons radio $("input:radio") // sélectionner les boutons $(":button") // sélectionner les champs texte $(":text") $("input:checked") $("input:selected") $("input:enabled") $("input:disabled")

Sélecteurs de formulaire <select name="valeur"> <option value="1">1</option> <option value="2" selected="selected">2</option> <option value="3">3</option> </select> $("select option:selected").val()

Fonction foreach Appelle une fonction pour chaque élément sélectionné : $(this) : élément courant i : index de l'élément courant $("table tr").each(function(i){ if (i % 2) $(this).addclass("odd"); } );

MODIFIER http://api.jquery.com/category/manipulation/

Modifier le contenu HTML.html('[contenu]') : remplacement du contenu d un élément (les balises sont considérées comme des balises).text('[contenu]') : remplacement du contenu d un élément en considérant le tout comme du texte (les caractères < et > des balises sont remplacés par les entités XML (> et <).after('[contenu]') : insertion du contenu après l élément sélectionné.before('[contenu]') : insertion du contenu avant l élément sélectionné.append('[contenu]') : insertion du contenu dans l élément sélectionné à la suite des éléments existants.prepend('[contenu]') : insertion du contenu dans l élément sélectionné avant les éléments existants

Modifier le contenu HTML.wrap('<balise></balise>') : insertion des balises passées en paramètre de part et d autre de l élément.wrapinner('<balise></balise>') : insertion des balises passées en paramètre de part et d autre des enfants de l élément.unwrap() : suppression de la balise parent Possibilité de combiner les modifications les unes à la suite des autres : $("div").html("hello jquery").wrapinner('<b></b>') Attention à la lisibilité! Possibilité de récupérer du contenu d un autre objet pour le passer en paramètre : $("div.a").html($("div.c").html()); met le contenu du div.c dans le div.a

Récupérer ou modifier les propriétés CSS Récupération de la valeur de l'attribut CSS d'un élément :.css('color') renvoie la couleur de l'élément Attribution d'une valeur à l'attribut CSS d'un élément :.css('color','red') attribue la couleur rouge à l'élément Attribution d'une valeur à l'attribut CSS des éléments de classe CSS «id» en fonction de leur valeur actuelle à l'aide d'une fonction : var tailleactuelle = parseint($('#id').css("font-size")); $('#id').css("font-size",function(){ return tailleactuelle+10; }); augmente de 10 points la taille de police de caractères des éléments de classe «id» Attribution d'un ensemble de valeurs à un ensemble d'attributs CSS d'un élément :.css({'border' : '1px solid black', 'color' : 'red'}) attribue la couleur rouge à l'élément et lui ajoute une bordure noire.

Récupérer ou modifier la classe CSS.addClass('laClasse') Ajoute la classe CSS laclasse à l'élément..removeclass('laclasse') Retire la classe CSS laclasse à l'élément..toggleclass('laclasse') Ajoute la classe CSS laclasse à l'élément s'il ne l'a pas, la lui retire sinon..hasclass('laclasse') Renvoie true si l'élément a la classecss laclasse, false sinon.