Table des matières. JavaScript. Exemples. À quoi ça sert? À quoi ça sert? Présentation. Exemple 1. 1ère partie. Js partout!



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

TP JAVASCRIPT OMI4 TP5 SRC

Programmation Web. Madalina Croitoru IUT Montpellier

HTML, CSS, JS et CGI. Elanore Elessar Dimar

HTML. Notions générales

Présentation du Framework BootstrapTwitter

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

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

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

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

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

Formation : WEbMaster

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

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Optimiser pour les appareils mobiles

Webmaster / Webdesigner / Wordpress

Manuel du composant CKForms Version 1.3.2

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

STID 2ème année : TP Web/PHP

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

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Formulaire pour envoyer un mail

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

Document Object Model (DOM)

DOM - Document Object Model

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

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

Formation HTML / CSS. ar dionoea

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

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Nouveautés joomla 3 1/14

SYSTÈMES D INFORMATIONS

PROGRAMME DE LA 1ERE JOURNEE DE FORMATION : QUALITE WEB ET REFERENCEMENT NATUREL

Qualité web : les bonnes pratiques front-end

RÉALISATION D UN SITE DE RENCONTRE

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

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

Programmation Internet Cours 4

Notes pour l utilisation d Expression Web

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

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

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

WIMS. Découvrir et utiliser

RESPONSIVE WEB DESIGN

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Joomla! Création et administration d'un site web - Version numérique

Association UNIFORES 23, Rue du Cercler LIMOGES

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

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

Attaques de type. Brandon Petty

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

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

SPIP. Gestion de la performance dans SPIP. Préoccupa)on historique

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

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

emuseum PUBLIEZ VOS COLLECTIONS SUR INTERNET Pourquoi choisir emuseum? Intégration facile avec TMS Puissante fonction de recherche

Manuel Utilisateur ENTREPRISE Assistance téléphonique : (0.34 / min)

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

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

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

{less} Guide de démarrage

CREATION d UN SITE WEB (INTRODUCTION)

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

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

Nouveautés de la version moodle 2.7

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

Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013

HTML5 et CSS3 pour des sites Responsive Web Design

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

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

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Des solutions sur mesure à partir de modules fonctionnels & CRM associés à un studio de customisation.

Intranet d'établissement avec Eva-web Installation configuration sur serveur 2000 ou 2003 Document pour les administrateurs

Gestion d identités PSL Exploitation IdP Authentic

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Ajax, RIA et HTML Prise en charge d Ajax

Point sur les solutions de développement d apps pour les périphériques mobiles

FORMATION / CREATION DE SITE WEB / 4 JOURNEES Sessions Octobre 2006

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

Espace numérique de travail collaboratif

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Intégrateur Web HTML5 CSS3

Stockage du fichier dans une table mysql:

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

Mozilla Firefox 3.5. Google Chrome 3.0 LES NAVIGATEURS WEB. (pour Windows) Opéra 10. Internet Explorer 8. Safari 4.0

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

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

SITE I NTERNET. Conception d un site Web

Les outils de création de sites web

Survol des nouveautés

SOUTENANCE ORALE RAPPORT DE PROJET D INFORMATIQUE

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

RESPONSIVE DESIGN : Comment offrir à vos sites une adaptabilité parfaite?

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

PLATEFORME INTÉGRÉE DE DÉVELOPPEMENT

INTRODUCTION AU CMS MODX

Catalogue des Formations Techniques

Transcription:

JavaScript M4103C - Programmation Web client riche Table des matières À quoi ça sert? 2ème année - S4, cours - 1/5 2014-2015 Présentation Exemple 1 Marcel Bosc Exemple 2 Département informatique 1ère partie IUT de Villetaneuse Université Paris-13 Exemples Google Maps Js partout! À quoi ça sert? Menus déroulants etc.

JS = navigateur Serveur = lent client navigateur HTML CSS Javascript site.org serveur web PHP ou Java client (navigateur) votre adresse: toto@site.o envoyer http://site.org/saisie.php 1 serveur site.org apache 2 saisie.php 3 SQL adresse non valide! toto@site.o envoyer 4 lenteur réseau exécution PHP - serveur chargé lenteur réseau lenteur affichage internet JavaScript = rapide très simplifié... internet Utile et sympa! client (navigateur) votre adresse: toto@site.o envoyer adresse non valide! toto@site.o envoyer 1 2 script client serveur apache pas d'interaction client / serveur lente site.org Stages : presque tous Web => JS Emploi : très demandé Sympa! internet

2ème partie Présentation Syntaxe Exemple <html> exemple.html <head> <title>exemple</title> <script src="jquery.js"></script> <script src="exemple.js"></script> </head> <> <h1>ceci est un titre</h1> <p>bla bla bla</p> </> </html> exemple.js $('h1').click(function() $('p').text('bonjour!'); Changer l'affichage Syntaxe "C" (PHP, Java...) var i; for(i=0; i<10; i++) console.log('exemple '+i); if(i>5)console.log('i est > 5');} } une_fonction_exemple(); function une_fonction_exemple() alert("c'est moi!"); }; Type implicite (pas de "int", "String"...) var i; for(i=0; Changer i<10; i++) couleur console.log('exemple '+i); if(i>5)console.log('i est > 5');} } Programme js Cacher / montrer $('#bouton').click(function() alert('le bouton a été appuyé!'); Ajouter image Un titre Navigateur un paragraphe

HTML arbre <> <h1>ceci est un titre</h1> <p> Un paragraphe de texte avec un <a href="page2.html">lien</a> vers une autre page. Les mots suivants <strong>sont importants</strong> </p> </> h1 p p a img a strong img un objet! DOM Document Object Model représentation objet des éléments HTML du document <img id="photo"... /> On peut le manipuler en Javascript Text Ceci est un titre Text Un para... avec un a Text lien Text vers une... suivants strong Text sont importants i=document.getelementbyid("photo"); i.style.border="1px solid red"; Principaux objets DOM jquery window Un titre DOM brut : Facilite l'accès au DOM document un paragraphe HTMLElement document.getelementbyid('photo').style.display="none"; jquery : $('#photo').hide(); «$» = jquery

3ème partie Exemple Exemple 1 $('h1').click(function() $('p').text('bonjour!'); «#» = id balise «.» = class Rappel : sélecteurs CSS #para1 color: green;} p color: red;}.actu color: blue;} <h1>un essai</h1> <h2>titre section-1</h2> <p id="para1">bla bla bla bla</p> <h2 class="actu">titre section-2</h2> <p>bli bli bli bli bli</p> <h2>titre section-3</h2> <p>qu'est qu'on s'amuse!</p> <h2 class="actu">titre section-4</h2> <p>abc def ghi jkl mno</p> <h2 class="actu">titre section-5</h2> h1 p Liste jquery <> <h1>ceci est un titre</h1> <p>bla bla bla</p> </> $('xyz') liste de tous les éléments correspondant au sélecteur xyz

Liste jquery Fonction jquery :.css() h1 p p <> <h1 class="actu">un titre</h1> <p class="actu">bla bla</p> <p>bla bla</p> </> Sur la liste appeler la fonction "css" $('.actu').css('color','red'); ".css()" change la propriété «style» des éléments : <p> <p style="color: red;"> Fonctions jquery : class Fonctions jquery :.text().html() $('p').addclass('actu'); $('p').text('bonjour'); <p> <p class="actu"> <p>bla bla</p> <p>bonjour</p> Mieux que.css()! class + fichier CSS $('p').removeclass('actu'); <p class="actu"> <p> $('p').html('bonjour <a href="...">joe</a>'); <p>bla bla</p> $('p').hasclass('actu') true false <p>bonjour <a href="...">joe</a></p>

DOM & jquery DOM & jquery j=«liste» d'un seul élément jquery var j=$('#photo'); d = un élément DOM var d=document.getelementbyid('photo'); DOM jquery jquery DOM DOM jquery jquery j.css('color','red'); j.width(100); j.addclass('actu'); j.removeclass('actu'); j.text('bonjour'); j.html('bonjour <a...>joe</a>'); DOM d.style.color="red"; d.style.width="100px"; d.classname+=' actu'; d.classname=d.classname.repla ce(/\bactu\b/,' ') d.textcontent='bonjour'; d.innerhtml('bonjour <a...>joe</a>'); $(d) $('#photo')[0]... jquery Exemple DOM Réagir à un événement $('h1').click(function() $('p').text('bonjour!'); Ceci est un titre h1 p bla bla bla click sur h1 $('h1').click(une_fonction_a_appeler); Gestionnaire d événement : une fonction qui sera appelée plus tard, lorsqu'un événement se produit

Événements Programmation événementielle click click bouton souris Séquentielle «classique» Événementielle mousedown bouton souris enfoncé début. début. mouseover mousemove keydown keyup keypress ready / load souris entre sur un élément souris bouge sur un élément touche enfoncée touche relâchée touche enfoncée et relâchée élément a fini de charger 1. Afficher "bonjour" 2. Afficher carré rouge 3. Afficher ligne... fin. 1. Afficher "bonjour" 2. si click appeler fonction "reagir_click" attendre click utilisateur change submit élément formulaire modifié formulaire envoyé reagir_click() Afficher carré rouge... Event / this Exemple $('h1').click(une_fonction_a_appeler);... function une_fonction_a_appeler(event) if(event.which===1) $(this).css('font-size','12px'); } } $('h1').click(function() $('p').text('bonjour!'); this : élément DOM cible de l'événement event : objet décrivant l'événement

Fonction anonyme 4ème partie Approche «habituelle» $('h1').click(une_fonction_a_appeler);... function une_fonction_a_appeler() } lourd... Exemple 2 Fonction anonyme $('h1').click(function() pratique... très utilisé! Exemple 2 <> <div> <input id="saisie" type="text"> <input id="ajouter" type="button" value="ajouter"/> </div> <ul id="liste"> <li>tom</li> <li>joe</li> </ul> </> exemple2.js $('#ajouter').click(function() var ligne=$('<li></li>'); var texte=$('#saisie').val(); ligne.text(texte); $('#liste').append(ligne); <div> <input id="saisie" type="tex <input id="ajouter" type="but </div> <ul id="liste"> <li>tom</li> <li>joe</li> </ul> div ul input input li li

Rappels Fonction jquery :.val() $('#ajouter').click(function() var ligne=$('<li></li>'); var texte=$('#saisie').val(); ligne.text(texte); $('#liste').append(ligne); attendre événement «prêt» sur doc. attendre événement «click» sur élém. id="ajouter" changer texte dans él. jquery «ligne» $('#ajouter').click(function() var ligne=$('<li></li>'); var texte=$('#saisie').val(); ligne.text(texte); $('#liste').append(ligne); <select> <input type="text"/> <textarea> Créer un élément Ajouter dans l'arbre DOM $('#ajouter').click(function() var ligne=$('<li></li>'); var texte=$('#saisie').val(); ligne.text(texte); $('#liste').append(ligne); élément <li> pas encore dans l'arbre DOM input div ul input li li <ul id="liste"> $('<xyz..>...</xyz>') Crée des nouveaux éléments à partir du code HTML. $('#liste').append(ligne); éléments à ajouter : endroit où ajouter $('<li></li>')

Où ajouter dans l'arbre DOM? $('ul').before(...); $('ul').after(...); div ul li li Ce document est distribué librement. Sous licence GNU FDL : http://www.gnu.org/copyleft/fdl.html Les originaux sont disponibles au format LibreOffice http://www-info.iutv.univ-paris13.fr/~bosc $('ul').prepend(...); $('ul').append(...);