SlideShare a Scribd company logo
1 of 30
jQuery e i suoi plugin Pasquale Puzio 26 Maggio 2011, Bologna
Agenda Fondamenti di jQuery jQuery DOM & CSS Ajax & Gestionedeglieventi Animazioni Plugin RICH Internet (Web) Application DEMO ‘All in one’
Fondamenti di jQuery jQuery è unalibreria/framework open-source per Javascriptconcepita per semplificarenotevolmente e cambiareradicalmenteilmodo di programmare in Javascript
Perché scegliere jQuery GRATIS Semplicità Piena compatibilità Cross-Browser:IE 6+, FireFox 2+, Safari 3+, Opera 9+, Chrome Documentazione Community di supporto Quantità enorme di plugin Integrazione con i principali IDE tra cui Visual Studio
Perché scegliere jQuery Perché è meglio di questo: function assegnaXMLHttpRequest() { var XHR = null; browserUtente= navigator.userAgent.toUpperCase(); If (typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object")    XHR = new XMLHttpRequest(); else if( window.ActiveXObject&& browserUtente.indexOf("MSIE 4") < 0 ) { If (browserUtente.indexOf("MSIE 5") < 0)     XHR = new ActiveXObject("Msxml2.XMLHTTP"); else XHR = new ActiveXObject("Microsoft.XMLHTTP"); } return XHR; }
PerchèsceglierejQuery
PerchèsceglierejQuery
PerchèsceglierejQuery
Filosofia di jQuery Per accedere agli elementi del DOM si utilizzano i selettori CSS I selettori restituiscono un’istanza di jQuery sulla quale è possibile eseguire alcune azioni (manipolazione del DOM, CSS, gestione degli eventi, chiamate Ajax, ecc.)
Filosofia di jQuery Funzione principale: jQuery() Alias: $() Selezione Azione
DOM & CSS (Selettori) $("#ID") 					// id  $("div") 					// div tag name  $('[name*="value"]') 			// name contains  $('[name^="value"]') 			// name start  $(".myCssClass") 				// css class name  $("form input") 				// descendant(s)  $("#main > div") 				// child(s)  $("#main ~ div") 				// sibling(s)  $("input[name='radio']:checked") 	// radio checked  $("td:first-child a") 			//<a> in first td  $("input:disabled") 			// disabled input a[href^="http://"]			// external links
DOM & CSS (Manipolazione DOM) $(‘div#content’).html(‘<p>Contenuto</p>’); $(‘div#content’).append(‘<a>Link</a>’); $(‘div#content’).addClass(‘red’); $(‘div#content’).toggleClass(‘yellow’); $(‘div#contenta’).attr(‘href’,’http://www.jquery.org’); $(‘div#contenta’).css(‘font-weight’,’bold’); $(‘div#content p’).parent(); $(‘div#content p’).after(); $(‘div#contenta’).before();
DOM & CSS DEMO
Ajax e Gestione degli eventi $(document).ready(function() { alert(‘DOM is ready!’); }); $(‘a#button’).click(function() { 	$(this).css(‘color’,’green’); });
Ajax e Gestione degli eventi $(‘div#sidebar’).load(‘sidebar.php’); // metodi Ajax $.get(url, [data], callback); $.post(url, [data], callback); $.getJSON(url, params, callback); $.getScript(url, callback);
Ajax e Gestione degli eventi DEMO
Animazioni $(‘p#myParagraph’).show(); $(‘p#myParagraph’).hide(); $(‘p#myParagraph’).toggle(); $(‘p#myParagraph’).fadeIn(); $(‘p#myParagraph’).fadeOut(); // animazioni custom $(‘p#myParagraph’).animate(params);
Animazioni DEMO
Plugin Innumerevoli plugin per qualsiasi esigenza Animazioni (slideshow, carousel, ecc.) User Interface Rich Internet (Web) Application E’ facile sviluppare un plugin E’ facile utilizzare un plugin <script src=‘jquery.js’ type=‘text/javascript’></script> <script src=‘myplugin.js’ type=‘text/javascript’></script>
Plugin (Template) Sviluppato da Microsoft Permette a partire da strutture dati Javascript di generare codice HTML mediante l’uso di Template
Plugin (Template)
jQuery (Data Link) Anch’esso sviluppato da Microsoft Permette di creare un bind tra gli elementi di un form e un oggetto Javascript
Plugin (Data Link)
DEMO ‘ALL IN ONE’ DEMO $(‘#demo’).show()
Conclusioni Semplicità Completezza Flessibilità Supporto Potenzialità
Per iniziarea sviluppare Visual Studio Express 2010 o Visual Studio 2010 Professional (MSDN Academic Alliance): http://www.microsoft.com/express/Web/ Eclipse + plugin Aptana: http://www.aptana.com/
DOMANDE? Grazie per l’attenzione
Riferimenti jQuery (UI): http://www.jquery.com http://www.jqueryui.com MSDN Academic Alliance Unibo: http://msdn60.e-academy.com/elms/Storefront/Home.aspx?campus=dsdi_si Slide e materiale del seminario: http://www.pasqualepuzio.it/seminari/jquery-bologna
Contatti puzio@cs.unibo.it http://www.pasqualepuzio.it
RISORSE

More Related Content

What's hot

Php mysql e cms
Php mysql e cmsPhp mysql e cms
Php mysql e cms
orestJump
 

What's hot (9)

Progetto di Basi di Dati
Progetto di Basi di DatiProgetto di Basi di Dati
Progetto di Basi di Dati
 
Umarells
UmarellsUmarells
Umarells
 
PHP 5.3 Attribute Template Language (Template Engine)
PHP 5.3 Attribute Template Language (Template Engine)PHP 5.3 Attribute Template Language (Template Engine)
PHP 5.3 Attribute Template Language (Template Engine)
 
jQuery - 5 | WebMaster & WebDesigner
jQuery - 5 | WebMaster & WebDesignerjQuery - 5 | WebMaster & WebDesigner
jQuery - 5 | WebMaster & WebDesigner
 
PHP Template Engine (introduzione)
PHP Template Engine (introduzione)PHP Template Engine (introduzione)
PHP Template Engine (introduzione)
 
Mantenere una distribuzione Drupal attraverso test coverage: Paddle case study
Mantenere una distribuzione Drupal attraverso test coverage: Paddle case studyMantenere una distribuzione Drupal attraverso test coverage: Paddle case study
Mantenere una distribuzione Drupal attraverso test coverage: Paddle case study
 
Javascript - 8 | WebMaster & WebDesigner
Javascript - 8 | WebMaster & WebDesignerJavascript - 8 | WebMaster & WebDesigner
Javascript - 8 | WebMaster & WebDesigner
 
Php mysql e cms
Php mysql e cmsPhp mysql e cms
Php mysql e cms
 
Autenticazione delle api con jwt e symfony (Italian)
Autenticazione delle api con jwt e symfony (Italian)Autenticazione delle api con jwt e symfony (Italian)
Autenticazione delle api con jwt e symfony (Italian)
 

Similar to jQuery e i suoi plugin

Introduzione a jQuery
Introduzione a jQueryIntroduzione a jQuery
Introduzione a jQuery
Sandro Marcon
 
Pycon Jungle
Pycon JunglePycon Jungle
Pycon Jungle
guest6b08a5
 
JAMP DAY 2010 - ROMA (4)
JAMP DAY 2010 - ROMA (4)JAMP DAY 2010 - ROMA (4)
JAMP DAY 2010 - ROMA (4)
jampslide
 
April 2010 - Seam unifies JEE5
April 2010 - Seam unifies JEE5April 2010 - Seam unifies JEE5
April 2010 - Seam unifies JEE5
JBug Italy
 

Similar to jQuery e i suoi plugin (20)

Write less do more...with jQuery
Write less do more...with jQueryWrite less do more...with jQuery
Write less do more...with jQuery
 
Non Conventional Android Programming (Italiano)
Non Conventional Android Programming (Italiano)Non Conventional Android Programming (Italiano)
Non Conventional Android Programming (Italiano)
 
Introduzione a jQuery
Introduzione a jQueryIntroduzione a jQuery
Introduzione a jQuery
 
Oo Javascript
Oo JavascriptOo Javascript
Oo Javascript
 
Sviluppare estensioni per google chrome
Sviluppare estensioni per google chromeSviluppare estensioni per google chrome
Sviluppare estensioni per google chrome
 
Yagwto
YagwtoYagwto
Yagwto
 
eZ publish - Extension
eZ publish - ExtensioneZ publish - Extension
eZ publish - Extension
 
Matteo Bicocchi - Introducing HTML5
Matteo Bicocchi - Introducing HTML5Matteo Bicocchi - Introducing HTML5
Matteo Bicocchi - Introducing HTML5
 
Pycon Jungle
Pycon JunglePycon Jungle
Pycon Jungle
 
JAMP DAY 2010 - ROMA (4)
JAMP DAY 2010 - ROMA (4)JAMP DAY 2010 - ROMA (4)
JAMP DAY 2010 - ROMA (4)
 
Django
DjangoDjango
Django
 
Django: utilizzo avanzato e nuove funzionalità
Django: utilizzo avanzato e nuove funzionalitàDjango: utilizzo avanzato e nuove funzionalità
Django: utilizzo avanzato e nuove funzionalità
 
Introduzione a java script
Introduzione a java scriptIntroduzione a java script
Introduzione a java script
 
Corso di php01
Corso di php01Corso di php01
Corso di php01
 
Luca Masini: Introduzione a GWT 2.0
Luca Masini: Introduzione a GWT 2.0Luca Masini: Introduzione a GWT 2.0
Luca Masini: Introduzione a GWT 2.0
 
Ajax
AjaxAjax
Ajax
 
Presentazione wicket
Presentazione wicketPresentazione wicket
Presentazione wicket
 
Java Advanced
Java AdvancedJava Advanced
Java Advanced
 
Seam unifies Java EE by Massimiliano Ciccazzo
Seam unifies Java EE by Massimiliano CiccazzoSeam unifies Java EE by Massimiliano Ciccazzo
Seam unifies Java EE by Massimiliano Ciccazzo
 
April 2010 - Seam unifies JEE5
April 2010 - Seam unifies JEE5April 2010 - Seam unifies JEE5
April 2010 - Seam unifies JEE5
 

Recently uploaded

Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 

Recently uploaded (16)

Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 

jQuery e i suoi plugin

  • 1. jQuery e i suoi plugin Pasquale Puzio 26 Maggio 2011, Bologna
  • 2. Agenda Fondamenti di jQuery jQuery DOM & CSS Ajax & Gestionedeglieventi Animazioni Plugin RICH Internet (Web) Application DEMO ‘All in one’
  • 3. Fondamenti di jQuery jQuery è unalibreria/framework open-source per Javascriptconcepita per semplificarenotevolmente e cambiareradicalmenteilmodo di programmare in Javascript
  • 4. Perché scegliere jQuery GRATIS Semplicità Piena compatibilità Cross-Browser:IE 6+, FireFox 2+, Safari 3+, Opera 9+, Chrome Documentazione Community di supporto Quantità enorme di plugin Integrazione con i principali IDE tra cui Visual Studio
  • 5. Perché scegliere jQuery Perché è meglio di questo: function assegnaXMLHttpRequest() { var XHR = null; browserUtente= navigator.userAgent.toUpperCase(); If (typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object") XHR = new XMLHttpRequest(); else if( window.ActiveXObject&& browserUtente.indexOf("MSIE 4") < 0 ) { If (browserUtente.indexOf("MSIE 5") < 0) XHR = new ActiveXObject("Msxml2.XMLHTTP"); else XHR = new ActiveXObject("Microsoft.XMLHTTP"); } return XHR; }
  • 9. Filosofia di jQuery Per accedere agli elementi del DOM si utilizzano i selettori CSS I selettori restituiscono un’istanza di jQuery sulla quale è possibile eseguire alcune azioni (manipolazione del DOM, CSS, gestione degli eventi, chiamate Ajax, ecc.)
  • 10. Filosofia di jQuery Funzione principale: jQuery() Alias: $() Selezione Azione
  • 11. DOM & CSS (Selettori) $("#ID") // id $("div") // div tag name $('[name*="value"]') // name contains $('[name^="value"]') // name start $(".myCssClass") // css class name $("form input") // descendant(s) $("#main > div") // child(s) $("#main ~ div") // sibling(s) $("input[name='radio']:checked") // radio checked $("td:first-child a") //<a> in first td $("input:disabled") // disabled input a[href^="http://"] // external links
  • 12. DOM & CSS (Manipolazione DOM) $(‘div#content’).html(‘<p>Contenuto</p>’); $(‘div#content’).append(‘<a>Link</a>’); $(‘div#content’).addClass(‘red’); $(‘div#content’).toggleClass(‘yellow’); $(‘div#contenta’).attr(‘href’,’http://www.jquery.org’); $(‘div#contenta’).css(‘font-weight’,’bold’); $(‘div#content p’).parent(); $(‘div#content p’).after(); $(‘div#contenta’).before();
  • 13. DOM & CSS DEMO
  • 14. Ajax e Gestione degli eventi $(document).ready(function() { alert(‘DOM is ready!’); }); $(‘a#button’).click(function() { $(this).css(‘color’,’green’); });
  • 15. Ajax e Gestione degli eventi $(‘div#sidebar’).load(‘sidebar.php’); // metodi Ajax $.get(url, [data], callback); $.post(url, [data], callback); $.getJSON(url, params, callback); $.getScript(url, callback);
  • 16. Ajax e Gestione degli eventi DEMO
  • 17. Animazioni $(‘p#myParagraph’).show(); $(‘p#myParagraph’).hide(); $(‘p#myParagraph’).toggle(); $(‘p#myParagraph’).fadeIn(); $(‘p#myParagraph’).fadeOut(); // animazioni custom $(‘p#myParagraph’).animate(params);
  • 19. Plugin Innumerevoli plugin per qualsiasi esigenza Animazioni (slideshow, carousel, ecc.) User Interface Rich Internet (Web) Application E’ facile sviluppare un plugin E’ facile utilizzare un plugin <script src=‘jquery.js’ type=‘text/javascript’></script> <script src=‘myplugin.js’ type=‘text/javascript’></script>
  • 20. Plugin (Template) Sviluppato da Microsoft Permette a partire da strutture dati Javascript di generare codice HTML mediante l’uso di Template
  • 22. jQuery (Data Link) Anch’esso sviluppato da Microsoft Permette di creare un bind tra gli elementi di un form e un oggetto Javascript
  • 24. DEMO ‘ALL IN ONE’ DEMO $(‘#demo’).show()
  • 25. Conclusioni Semplicità Completezza Flessibilità Supporto Potenzialità
  • 26. Per iniziarea sviluppare Visual Studio Express 2010 o Visual Studio 2010 Professional (MSDN Academic Alliance): http://www.microsoft.com/express/Web/ Eclipse + plugin Aptana: http://www.aptana.com/
  • 27. DOMANDE? Grazie per l’attenzione
  • 28. Riferimenti jQuery (UI): http://www.jquery.com http://www.jqueryui.com MSDN Academic Alliance Unibo: http://msdn60.e-academy.com/elms/Storefront/Home.aspx?campus=dsdi_si Slide e materiale del seminario: http://www.pasqualepuzio.it/seminari/jquery-bologna