1+ // utility
2+ var elementInViewport = function ( el ) { //check element is in viewport
3+ var rect = el . getBoundingClientRect ( ) ;
4+ return (
5+ rect . top >= 0
6+ && rect . left >= 0
7+ && rect . top <= ( window . innerHeight || document . documentElement . clientHeight )
8+ )
9+ } ;
10+
111//generate a random image from http://dummy-image-generator.com/
212
313var fl = document . querySelector ( '.fill' ) ,
@@ -66,22 +76,23 @@ for ( var i=0, itl=itms2.length; i<itl; i++ ){
6676//some DLL demo
6777new dll ( '.cover' , pageLoadFinished ) ;
6878function pageLoadFinished ( ) {
69- var loader = document . querySelector ( '.page-loader' ) , loaderImg = loader . getElementsByTagName ( 'IMG' ) [ 0 ] , isIE = document . documentElement . classList . contains ( 'ie' ) ;
79+ var loader = document . querySelector ( '.page-loader' ) , loaderImg = loader . getElementsByTagName ( 'IMG' ) [ 0 ] ,
80+ isIE = document . documentElement . classList . contains ( 'ie' ) ;
7081 setTimeout ( function ( ) {
71- new KUTE . Animate ( loaderImg , { from : { opacity :1 } , to : { opacity :0 } , duration : 1500 , easing : 'linear' } ) ;
82+ KUTE . fromTo ( loaderImg , { opacity :1 } , { opacity :0 } , { duration : 1500 , easing : 'linear' } ) . start ( ) ;
7283 loader . getElementsByTagName ( 'P' ) [ 0 ] . innerHTML = 'Done, now other examples..'
7384 } , 500 ) ;
7485 setTimeout ( function ( ) {
7586 //play some KUTE tweens
7687 if ( ! isIE ) {
77- new KUTE . Animate ( loader , { from : { translate : { y : 0 } , opacity :1 } , to : { translate : { y : - 1000 } , opacity :0 } , duration : 700 , easing : 'exponentialIn ' } ) ;
78- new KUTE . Animate ( '.site-wrapper' , { from : { translate : { y : 550 } , opacity : 0 } , to : { translate : { y : 0 } , opacity : 1 } , delay : 700 , duration : 1200 , easing : 'exponentialInOut ' } )
88+ KUTE . fromTo ( loader , { translate : [ 0 , 0 ] , opacity :1 } , { translate : [ 0 , - 1000 ] , opacity :0 } , { duration : 700 , easing : 'easingExponentialIn ' } ) . start ( ) ;
89+ KUTE . fromTo ( '.site-wrapper' , { translate : [ 0 , 550 ] , opacity : 0 } , { translate : [ 0 , 0 ] , opacity : 1 } , { delay : 700 , duration : 1200 , easing : 'easingExponentialInOut ' } ) . start ( )
7990 } else {
80- new KUTE . Animate ( loader , { from : { position : { top : '50%' } , opacity :1 } , to : { position : { top : '-5%' } , opacity :0 } , duration : 700 , easing : 'exponentialIn ' } ) ;
81- new KUTE . Animate ( '.site-wrapper' , { from : { position : { top : 550 } , opacity : 0 } , to : { position : { top : 0 } , opacity : 1 } , delay : 700 , duration : 1200 , easing : 'exponentialInOut ' } )
91+ KUTE . fromTo ( loader , { position : { top : '50%' } , opacity :1 } , { position : { top : '-5%' } , opacity :0 } , { duration : 700 , easing : 'easingExponentialIn ' } ) . start ( ) ;
92+ KUTE . fromTo ( '.site-wrapper' , { position : { top : 550 } , opacity : 0 } , { position : { top : 0 } , opacity : 1 } , { delay : 700 , duration : 1200 , easing : 'easingExponentialInOut ' } ) . start ( )
8293 }
83- new KUTE . Animate ( '.cover' , { from : { opacity : 0 } , to : { opacity : 1 } , delay : 2000 , duration : 2000 , easing : 'exponentialIn ' } )
84- new KUTE . Animate ( '.navbar-wrapper' , { from : { opacity : 0 } , to : { opacity : 1 } , delay : 4000 , duration : 2000 , easing : 'linear' } )
94+ KUTE . fromTo ( '.cover' , { opacity : 0 } , { opacity : 1 } , { delay : 2000 , duration : 2000 , easing : 'easingExponentialIn ' } ) . start ( )
95+ KUTE . fromTo ( '.navbar-wrapper' , { opacity : 0 } , { opacity : 1 } , { delay : 4000 , duration : 2000 , easing : 'linear' } ) . start ( )
8596 } , 3000 )
8697}
8798
@@ -105,7 +116,7 @@ function clickExample(e){
105116 for ( var i = 0 ; i < il ; i ++ ) {
106117 var dl = 350 * i ;
107118 fn = i === ( il - 1 ) ? finished : '' ;
108- new KUTE . Animate ( itms [ i ] , { from : { scale : 1.5 , opacity : 0 } , to : { scale : 1 , opacity : 1 } , delay : dl , duration : 700 , easing : 'exponentialOut ' , finish : fn } ) ;
119+ KUTE . fromTo ( itms [ i ] , { scale : 1.5 , opacity : 0 } , { scale : 1 , opacity : 1 } , { delay : dl , duration : 700 , easing : 'easingExponentialOut ' , finish : fn } ) . start ( ) ;
109120 }
110121 btn . innerHTML = 'Animating...' ;
111122 function finished ( ) {
@@ -128,22 +139,23 @@ function scrollExample(){
128139 if ( ! el . classList . contains ( 'loaded' ) ) {
129140 el . classList . add ( 'loaded' ) ;
130141 var itms = el . getElementsByTagName ( 'IMG' ) , il = itms . length ;
131- new KUTE . Animate ( el , { from : { opacity : 0 } , to : { opacity : 1 } , delay : 500 , duration : 2000 , easing : 'exponentialOut ' } ) ;
142+ KUTE . fromTo ( el , { opacity : 0 } , { opacity : 1 } , { delay : 500 , duration : 2000 , easing : 'easingExponentialOut ' } ) . start ( ) ;
132143 for ( var i = 0 ; i < il ; i ++ ) {
133144 var dl = parseInt ( 250 * i + 2500 ) ;
134- new KUTE . Animate ( itms [ i ] , { from : { scale : 0.2 , opacity : 0 } , to : { scale : 1 , opacity : 1 } , delay : dl , duration : 500 , easing : 'backOut ' } ) ;
145+ KUTE . fromTo ( itms [ i ] , { scale : 0.2 , opacity : 0 } , { scale : 1 , opacity : 1 } , { delay : dl , duration : 500 , easing : 'easingBackOut ' } ) . start ( ) ;
135146 }
136147 }
137148 }
138149}
139150
140151//scroll top?
141- var toTop = document . getElementById ( 'toTop' ) ;
152+ var toTop = document . getElementById ( 'toTop' ) ,
153+ toTopTween = KUTE . to ( 'window' , { scroll : 0 } , { easing : 'easingQuarticOut' , duration : 1500 } ) ;
142154toTop . addEventListener ( 'click' , topHandler , false ) ;
143155
144156function topHandler ( e ) {
145157 e . preventDefault ( ) ;
146- new KUTE . Animate ( 'div' , { to : { scroll : 0 } , easing : 'quarticOut' , duration : 1500 } ) ;
158+ toTopTween . start ( ) ;
147159}
148160
149161//syntax highlighter
0 commit comments