L'ultimo metodo relativo alle animazioni è .animate(),
con il quale è possibile realizzare effetti personalizzati. Nella sua
forma più semplice accetta come primo argomento un oggetto JavaScript
con la proprietà CSS da animare ed il suo valore finale (assoluto o relativo):
$("p").animate({
"borderWidth" : "4px", //bordo a 4 pixel
"width" : "+20px" //aumenta la larghezza di 200 pixel
});Come è possibile vedere nell'esempio le proprietà CSS costituite da due parole (come border-width) vanno indicate nella loro notazione JavaScript (detta anche camel case)
Gli altri argomenti accettati sono la velocità, l'andamento (easing) ed una funzione di callback. Per quanto riguarda l'easing, il framework offre due opzioni predefinite, linear e swing, mentre altre possibili valori necessitano l'utilizzo di un plugin:
$("#box").animate({
"borderWidth" : "4px", //bordo a 4 pixel
"width" : "+=20px" //aumenta la larghezza di 20 pixel
},
"slow", //animazione lenta
"linear", //andamento lineare
function () {
//funzione di callback
alert("Animazione conclusa!");
}
);Ecco questo esempio in azione.
In alternativa è possibili passare ad .animate() un secondo argomento nella forma di oggetto JavaScript contentente
parametri aggiuntivi oltre a quelli accettati nella sintassi
precedente. Ecco la lista completa:
duration: la durata dell'animazione in millisecondi o come stringa (slow, normal, fast)easing: l'andamento, linear o swing (default: swing)complete: una funzione da lanciare quando l'animazione è conclusaqueue: true o false, inserisce l'animazione nella coda generale degli effetti (default: true) oppure la esegue direttamentePer concludere, tutti gli effetti possono essere sia disabilitati globalmente impostando su true la proprietà jQuery.fx.off, oppure bloccati "localmente" attraverso il metodo .stop().
Senza passare alcun argomento, questa funzione blocca l'effetto
corrente e passa al successivo, mentre per bloccare definitivamente le
animazioni (cancellandone la coda) basta passare come primo parametro true:
$("div").stop(); //ferma l'effetto corrente
$("div").stop(true); //ferma e cancella la codaInfine, passando un secondo argomento true, l'animazione salterà direttamente allo stato finale, lanciando anche la funzione di callback.
$("div").stop(true,true); //ferma e cancella la coda
PhantomJS, headless browser per test con JavascriptIl tool ideale per realizzare, da terminale, operazioni in remoto su... |
Creare e leggere QR Code in JavaScriptApplicazioni 'QR Code enabled' per il Web e per il mobile,... |
Jquery UI Map: web-mapping con Google Maps e jQueryUn plugin di jQuery UI per intefacciare applicaizoni Web/mobile con... |
Scrollorama e Scrolldeck, slideshow d'effetto con jQueryPlugin jQuery per ottenere Slideshow con diversi effetti di scrolling |
jCanvas, un primo semplice graficoAlla scoperta della libreria jCanvas, per semplificare il disegno e... |
Guida Node.jsIl framework che permette di per usare V8, l'interprete JavaScript... |
Canvas, guida ai frameworkCanvas, tra gli elementi di HTML5 è forse quello di maggior impatto.... |
Guida Javascript: tecniche avanzateUna guida dal taglio pratico per approfondire la programmazione a... |
Ogni martedì, direttamente nella tua e-mail: guide, articoli, script, novità e approfondimenti tecnici su JavaScript.
Iscriviti alla newsletter
|
|
Corso Webmaster base18 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso JQuery e Ajax per Webmaster03 Luglio 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |
|
|
Corso Webmaster base11 Giugno 2012 a Roma |