gli utenti • Se costruita correttamente, l'animazione può essere utile e performante • Perché altrimenti non stiamo usando il web al suo pieno potenziale • MORE FUN! Deep dive into oceanic javascript animations with a greensock
Fact CSS: "Hardware accelerated" e "Mobile-friendly" JS: Performante, versatile, event-based... Deep dive into oceanic javascript animations with a greensock
il quale, durante la realizzazione di un'animazione, vengono creati una serie di fotogrammi (definiti tweens) tra un fotogramma di partenza e uno di arrivo (definiti keyframe). Wikipedia Deep dive into oceanic javascript animations with a greensock
Può animare qualsiasi cosa • Veloce, robusta, API molto vasta e compatibile • Logo e visual identity terribile Deep dive into oceanic javascript animations with a greensock
gsap.to({ x: 500, duration: 1 }) -> Valore di destinazione • gsap.from({ x: 500, duration: 1 }) -> Valore di partenza • gsap.fromTo({ x: 0 }, { x: 500 }) -> Valore di partenza e destinazione • gsap.then() -> Ritorna Promise al posto di onComplete callback Deep dive into oceanic javascript animations with a greensock
METODI (più comuni) • gsap.timeline() -> Creare una nuova Timeline • gsap.addLabel() -> Aggiungere una Label • gsap.add() -> Aggiunge un tween, una timeline, una callback • gsap.set() -> Tween di durata 0 con destinazione Deep dive into oceanic javascript animations with a greensock
| DOM element, duration: Number (second based), fromVars: Object, toVars: Object, stagger: Number, onCompleteAll | onComplete: Function Deep dive into oceanic javascript animations with a greensock
parta. ease: Ease (or Function or String). repeat: Number - Numero di volte di ripetizione dell'animazione dopo la prima iterazione (-1 per infinito). yoyo: Boolean - Se true ogni ciclo di ripetizione alterna la direzione. paused: Boolean - Se true l'animazione viene interotta subito dopo la sua creazione. stagger: Number - In caso di più targets, imposta delay tra un tween e un altro onComplete: Function - Funzione che viene chiamata quando l'animazione è completata. Deep dive into oceanic javascript animations with a greensock
stati introdotti dagli animatori Ollie Johnston e Frank Thomas nel loro libro del 1981, The Illusion of Life: Disney Animation. Johnston e Thomas a loro volta hanno basato il loro libro sul lavoro dei principali animatori Disney dagli anni '30 in poi, e il loro sforzo per produrre animazioni più realistiche. Lo scopo principale dei principi era quello di produrre un'illusione di personaggi che aderivano alle leggi fondamentali della fisica, ma si occupavano anche di questioni più astratte, come i tempi emotivi e l'attrattiva del personaggio. Tumblr Vimeo Video Deep dive into oceanic javascript animations with a greensock
{ rotation: 360, duration: 0.8, stagger: 1.2, }); dall'ultimo al primo gsap.to('.box', { rotation: 360, duration: 0.8, stagger: -1.2 }); Deep dive into oceanic javascript animations with a greensock
animations gsap.to($cursor, { ease: SteppedEase.config(1), opacity: 0 }); Codepen Example Deep dive into oceanic javascript animations with a greensock
autoAlpha: 1, duration: 0.4 }) .to($meche, { x: -3, duration: 0.6 }); e poi: tl.restart() Deep dive into oceanic javascript animations with a greensock
}) gsap.to(split.chars, { , stagger: 0.01 }) per tornare ad un unico nodo DOM split.revert() Codepen Example Deep dive into oceanic javascript animations with a greensock