Copyright France Télécom, tous droits réservés Paris Web 2007 - Ateliers Les bibliothèques JS jQuery Orange Labs Julien Wajsberg, Recherche & Développement.

Slides:



Advertisements
Présentations similaires
Jean-Pierre Villain - Qelios W3Café Accessibilité - Paris – Avril 2011
Advertisements

Introduction aux Web Services Partie 1. Technologies XML
LE LANGAGE JAVASCRIPT LES FENETRES.
Création de pages Web dynamiques et sympathiques.
(Classes prédéfinies – API Java)
Design Pattern MVC En PHP5.
TP 3-4 BD21.
Manipulation d’XML avec XSL
Développement dun simulateur dinterface graphique à distance Présenté par Michaël Delhaye Promoteur : Jean Vanderdonckt.
Introduction aux Web Services Partie 1. Technologies HTML-XML
La balise <FORM>:
Introduction aux Web Services Partie 1. Technologies HTML-XML
2006/2007Denis Cabasson – Programmation Web Cours de programmation web ENSAE
JQuery.
Javascript les spécificités du langage - Partie 6 -
Présentation de la séquence de cours sur les interactions HTML-javascript Laure Walser, 11 juin 2010.
Introduction à DOM Maroua Bouzid
Ecole Supérieure Privée de ingénierie et de technologie année universitaire :2013/2014 Cross-Plateform Cours JavaScript.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
28 novembre 2012 Grégory Petit
 Ecriture dynamique des Calques, des tableaux HTML
Le langage Javascript pour le web
Le langage Javascript pour le web et application au DHTML
Méthode de suppression des cadres entourant les animations flash et activation automatique de leur focus lors du chargement des pages dans Internet Explorer.
Manipulation de formulaires en Javascript
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Clients riches RIA (Rich Internet Application) / RDA
AJAX.
Projet de Master première année 2007 / 2008
JQuery IHM François BONNEVILLE aricia -
Feuilles de styles CSS Syntaxe d'application d'un style à une balise HTML : Les différents types de style : Pourquoi utiliser un style ? Possibilité étendue.
Animateur : Med HAIJOUBI
Javascript 1° PARTIE : LES BASES
TP n°3 Javascript Contrôle de formulaire
Jquery.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
PROGRAMMATION WEB FRONT-END.
JavaScript Nécessaire Web.
Gestion des fichiers et dossiers
JavaScript.
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
AngularJS.
Cours de programmation web
Module: Technologie web 2.0 Classe: 3ème année ESPRIT
Les balises HTML et les objets JavaScript correspondants Objet document L'objet document est important dans la mesure ou il contient tous les objets du.
 Objet window, la fenêtre du navigateur
1 Registration Physique Séminaire du Master Davide Bazzi Université de Fribourg
Technologies web et web sémantique TP3 - XML. XML eXtensible Markup Language (langage extensible de balisage) – Caractéristiques: méta-langage = un langage.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
S'initier au HTML et aux feuilles de style CSS Cours 5.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
AJAX Open Source Etat de l’art Baris Ulucinar, Octobre 2006 University of Fribourg, Suisse Sous la direction de Prof. O. Abou Khaled.
Introduction au socle MEAN
S'initier au HTML et aux feuilles de style CSS Cours 5.
AJAX Jérôme CUTRONA 06:28:58 Programmation Web
Initiation au JavaScript
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Présentation et prise en main
Le JavaScript.. Histoire Langage créé en 1995 par Brendan Eich pour la Netscape Communications Corporation. Est inspiré de nombreux langages, notamment.
M2202 – Algorithmique – T.BAUSER. Objectifs Utiliser Jquery pour : - modifier/ajouter/supprimer un élément/un attribut/une classe, - créer des animations,
HTML Rappels des fondamentaux
FORMULAIRES FOMULAIRE Permet à l’utilisateur d’entrer des renseignements le concernant. Utilisation –Inscription sur un site –Mise à jour d’une base.
SI28 – Ecriture interactive et multimédia Sylvain Slaton – Pierre Laporte.
1 Web App Pourquoi une Web App au lieu d’une application native? 26 janvier 2012  Créer une application universelle  Durée de vie « infinie »  Plus.
Dreamweaver 2éme séance Murat Keles. Présentation I.CSS et Dreamweaver II.Les calques III.Les scénarios IV.Les comportements V.Les cadres VI.Mise en ligne.
Dreamweaver 2 Feuilles de Style CSS Formulaires Calques Comportements
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
1 Programmation Web Programmation WAMP/LAMP Premiers principes.
JQuery.
Transcription de la présentation:

copyright France Télécom, tous droits réservés Paris Web Ateliers Les bibliothèques JS jQuery Orange Labs Julien Wajsberg, Recherche & Développement 17/11/2007, présentation à Paris Web 2007

2 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 jQuery: une simple bibliothèque à importer Son but: rendre JavaScript plus "sympa" à utiliser. –write less, do more Assez des incompatibilités entre navigateurs ! jQuery nous cache tout ça … et le fait mieux que vous : il sait utiliser des spécificités natives de certains navigateurs pour aller plus vite ! (ex: XPath chez Mozilla, Javascript 1.6+)

3 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $('jquery') jQuery: une fonction –des sélecteurs à passer en argument –renvoie un objet qui représente les éléments correspondants Prototype l'a plébiscité: $ est la fonction-raccourci pour créer les objets

4 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $('anything') $ accepte un sélecteur CSS en argument $ accepte des ID : –$('#jquery') retourne un élément document.getElementById $ accepte des classes : –$('.jquery') retourne tous les éléments qui correspondent $ accepte plusieurs sélecteurs (comme en CSS, en fait) –$('.article,.nouvelles,.edito')

5 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $(anything) $ accepte des sélecteurs complexes : –$('.article + p a') $ accepte des sélecteurs spécifiques : –$(':radio'), $(':header'), $(':first-child') des sélecteurs en forme de filtres : –$(':checked'), $(':odd'), $(':visible') –plus fort: $(':contains(du texte)') des attributs –$('a[href]'), $('a[href^= $('img[src$=.png]')

6 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $('#jquery').show() jQuery: un objet –les méthodes s'appliquent généralement à tous les éléments sélectionnés –$('.jquery').hide(); plein de méthodes utilitaires –parcourir le DOM:.parent(),.next(),.children(),.parents() … –ajouter ou retirer des classes CSS: addClass, removeClass –manipuler: append, wrap, prepend –effets: show, hide…

7 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $(…).parent().next().find(…).show(); Intérêt fondamental: la plupart des méthodes de l'objet retournent l'objet lui-même –on peut chaîner les appels ! –$('anything').parent().find('still anything').show(); Cette propriété est extrêmement puissante !

8 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 javascript avancé : les callbacks une fonction prend en argument une autre fonction, qu'elle pourra appeler ensuite (événements, complétion…) function traitementFini() { alert('Mon traitement est fini'); } traitementLong(parametres, traitementFini); jQuery utilise des callbacks pour tous les événements

9 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 function() {.. } : les closures closures, ou fonctions anonymes –peut être utilisée partout où on attend une fonction var mafonction = function() { … }; traitementLong(parametres, function() { … }); On utilise énormément ces constructions dans un développement JavaScript "moderne"…

10 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $(anything).click(function) Javascript non intrusif: bref rappel –code HTML propre : des balises, des classes, des id, et c'est tout –le javascript exploite les sélecteurs CSS, pour utiliser des événements, ou ajoutant des éléments $('a.popup').click(function() { alert(this.href); } Imaginez le nombre de lignes en DOM classique pour faire ça… (ou encore $('a.popup > span + span[attr=$toto]')).

11 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $.ajax une méthode utilitaire pour encapsuler une requête ajax on reçoit la réponse dans une callback on peut traiter cette réponse à la mode jQuery…

12 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 $.ajax : exemple var callback = function(data) { var $data = $(data); var nb = $data.find("reponse").length; … var nb = $data.find("choix:contains('Bonne')").parent().length; }; $.ajax({ cache: false, success: callback, url: file });

13 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 les plugins on peut étendre facilement jQuery en utilisant des plugins les méthodes ajoutées sont au même niveau que les méthodes natives… il faut tâcher de conserver les mêmes sémantiques que les méthodes natives: retourner l'objet jQuery, appliquer la méthode à tous les éléments représentés à user et abuser pour factoriser du code, ou donner un nom métier à du traitement techniques (ex: cacherContenu() pour factoriser $('.classe').children('.contenu').hide()) beaucoup beaucoup beaucoup de plugins existent d'ores et déjà, à la qualité variable; certains sont mis en avant par l'équipe de développement

14 copyright France Télécom, tous droits réservés Orange Labs - Recherche & Développement Paris-Web 2007 – atelier bibliothèques JavaScript – 17/11/2007 les mains dans le cambouis exemple live

copyright France Télécom, tous droits réservés merci