Lesson2 01 JQuery
Lesson2 01 JQuery
Jquery
Jquery è un Framework
PRINCIPALI CARATTERISTICHE
Utilizziamo la libreria javascript jQuery per:
Partenza del codice quando il documento (il DOM) è pronto
INCLUDERE JQUERY NELLE PAGINE WEB
"Filosofia Jquery"
Selezionare gli elementi
selettori css 2 / css 3
jQuery supporta poi alcuni selettori custom:
Accedere e modificare le classi CSS
Gestire gli stili Css con Jquery
Aggiungere e rimuovere contenuto e inserire elementi
Ottenere l'elemento html
Ottenere solo il testo contenuto nel tag
Cambiare l'HTML e/o il Testo
Far seguire (appendere) del contenuto ad un
elemento
Altri comandi
Gli Eventi: intercettare il click del mouse con jQuery
Mostrare e nascondere elementi con jQuery
Animate
Oggetto jQuery() $()
Selettori TAG HTML
Selettori di ID
Selettori di CLASSE
Selettori per ATTRIBUTI
Selettori GERARCHICI
Selettori di Posizione
Selettori Cardinali di Posizione
1/24
Selettori Custom
Operazione sugli oggetti selezionati/creati
Operazione sugli oggetti selezionati/creati
Operazione sugli oggetti selezionati/creati
Operazione sugli oggetti selezionati/creati
Operazione sugli oggetti selezionati/creati
Eventi supportati
Tipologia di Eventi Javascript
on
Sintassi abbreviata eventi
Proprietà Oggetto evento
Funzioni Oggetto evento
Lanciare eventi
Jquery è un Framework
write less, do more
PRINCIPALI CARATTERISTICHE
Cross browser ( supportato dai principali browser)
Grande community = Grande disponibilità di plugin
Leggero (opinabile...)
Documentazione chiara e completa
Semplice
Utilizza selettori CSS (anche Css3 )
Sintassi compatta, permette di ridurre la quantità di codice
necessario rispetto all'uso di Javascript
Può gestire tutti gli elementi che compongono una pagina web (
div, immagini, span, p ... )
2/24
Utilizziamo la libreria javascript jQuery per:
$(document).ready(function() {
//codice da eseguire al caricamento del documento
});
3/24
<html>
<head>
<script src="percorso/al/file/jquery-x.x.js">
</script>
</head>
<body> ... </body>
</html>
"Filosofia Jquery"
<html>
<head>
<script src="percorso/jquery.js"></script>
<script type="javascript/text">
$(document).ready(function(){
$("p").html("Hello World");
}
</script>
</head>
<body>
<div>
<p></p>
</div>
</body>
</html>
4/24
Selezionare gli elementi
La principale caratteristica della funzione jQuery() (abbreviata in $() )
è quella di selezionare elementi HTML per modificarli: basta passare
un parametro stringa (tra apici doppi ["] o singoli ['] ) come negli
esempi che seguono:
$("div");
$("#mioId");
$(".miaClasse");
$("p#mioId");
$("ul li a.nav");
$(":animated");
$(":button"); selects any button elements (inputs or
buttons)
$(":radio");
$(":checkbox"); selects checkboxes
$(":checked");
$(":header"); selects header elements (h1, h2, h3,
5/24
etc.)
if ($("#mioElemento").hasClass("content")) {
//codice
}
$("p").css("width", "400px");
$("#mioElemento").css("color", "blue");
$("ul").css("border", "solid 1px #ccc");
6/24
Aggiungere e rimuovere contenuto e inserire
elementi
Ottenere l'elemento html
$("#mioElemento").html("<p>Questo è il nuovo
contenuto</p>");
$("#mioElemento").text("Questo è il nuovo
contenuto."); // questo sostituisce il testo presente
$("#mioElemento").append("<p>Questo lo aggiungo.
</p>");
$("p").append("<p>Questo pure.</p>"); // Aggiunge
questo contenuto ad ogni paragrafo
Altri comandi
appendTo()
7/24
prepend()
prependTo()
before()
insertBefore()
after()
insertAfter()
$("a").click(function() {
// il codice presente viene eseguito onclick!
});
blur()
focus()
hover()
keydown()
load()
mousemove()
resize()
scroll()
submit()
select()
8/24
$("#mioElemento").hide("slow", function() {
// nasconde
}
//mostra
$("#mioElemento").show("fast", function() {
// qui dentro viene eseguito una volta che l'elemento
è stato mostrato
}
$("#mioElemento").fadeOut("slow", function() {
//fai qualcosa quando termina l'effetto
}
$("#mioElemento").fadeIn("fast", function() {
//fai qualcosa quando termina l'effetto
}
$("#mioElemento").slideDown("fast", function() {
//fai qualcosa quando termina l'effetto
}
9/24
$("#mioElemento").slideUp("slow", function() {
//fai qualcosa quando termina l'effetto
}
$("#mioElemento").slideToggle(1000, function() {
//fai qualcosa quando termina l'effetto
}
Animate
$("#mioElemento").animate(
{
opacity: .3,
width: "500px",
height: "700px"
}, 2000, function() {
// fai qualcosa quando termina l'animazione
}
);
10/24
Selettori TAG HTML
$(elemento)
Selettori di ID
Permette di selezionare l’elemento della pagina che ha l’id
passato come parametro
$(#idelemento) elemento della pagina con attributo
id="principale"
$("div#principale") div della pagina con attributo id="principale"
$("#principale") Essendo l’id univoco all’interno della pagina la
selezione del div poteva essere omessa
Selettori di CLASSE
$(.nomeclasse) Per selezionare gli elementi della pagina che
hanno la classe passata come parametro
$(".evidenziato") Elementi della pagina che hanno classe
evidenziato
$("div.evidenziato") tutti i div della pagina con classe evidenziato
selettore descrizione
11/24
parametro
12/24
inizia con ‘logo’
Selettori GERARCHICI
selettore descrizione
$(fratello+sorelle)
$(fratello~sorelle)
13/24
Selettori di Posizione
selettore descrizione
14/24
Selettori Cardinali di Posizione
$(:nth-child(n)) e $(:nth-child(even|odd)) Permettono di
selezionare gli elementi discendenti in posizioni uguale a n
selettore descrizione
selettore descrizione
Selettori Custom
selettore descrizione
15/24
:disabled, :enabled elementi di input disabilitati o abilitati
Manipolazione
metodi disponibili
del DOM
Cancellare
empty, remove, removeAttr
elementi
16/24
Operazione sugli oggetti selezionati/creati
Esempi Manipolazione del DOM
$("li").text("testo lista").insertAfter("li:first");
//inserisce un elemento li appena creato dopo il
primo li del documento
$("div#principale").append("dentro il div");
//inserisce un paragrafo dentro il div che ha id
principale
$("input#email").val()
//valore della input box con id email
$("span").wrap("div")
//crea un div che contiene tutti gli elementi span
della pagina
$("p.evidenziato").text("Sono evidenziato");
//imposta il testo dei paragrafi di classe
evidenziano con la
stringa passata come parametro
$(selettore).each()
17/24
$(img).each(function(i){
$(this).attr("alt","immagine "+i);
})
$(.invisibile).hide().addClass("sparito")
$("").attr("src","img/test.jpg").addClass("logo").appendTo("div#princip
ale")
selettore descrizione
18/24
Seleziona il primo link del primo
.find("a:first")
Paragrafo di ogni div
Eventi supportati
dblclick
load
unload
submit
focus
blur
change
select
resize
keydown
keypress
keyup
scroll
mousemove
mousedown
mouseup
mouseover
error
EVENTO DESCRIZIONE
19/24
focus.
20/24
premuto (keypress)
on
$(selettore).on(evento,[dati],function(evento){...})
$(":text").on('focusin', function(){
this.addClass('inserimento');
}).on('focusout',function(){
this.removeClass('inserimento');
})
21/24
$("li").click(function(){$(this).hide()});
$("#mostraNascosti").mouseover(function(){
//quando il mouse passa sopra l'elemento con
id="mostraNascondi" gli elementi li nascosti vengano
visualizzati
$("li:hidden").show();
});
proprietà Descrizione
22/24
.which indica (in codice) quale bottone o tasto è stato
premuto.
$("a").on('click',function(evento){
evento.preventDefault();
});
Lanciare eventi
E' possibile tramite jQuery lanciare eventi, sia standard che
personalizzati $(selettore).trigger(evento, [dati])
Esempio $("a#link").click()
23/24
by Emiliano Castellina is licensed under a Creative Commons
Attribuzione Non commerciale
Condividi allo stesso modo 3.0 Unported License.
24/24