UNPKG

component-tween

Version:

Motion tween engine using 'ease'

79 lines (48 loc) 1.31 kB
# tween Motion tween component using [ease](https://github.com/component/ease). ## Installation $ component install component/tween ## Example ```js var Tween = require('tween'); var raf = require('raf'); var button = document.querySelector('button'); var tween = Tween({ rotate: 0, opacity: 0 }) .ease('out-bounce') .to({ rotate: 360, opacity: 1 }) .duration(800); tween.update(function(o){ button.style.opacity = o.opacity; button.style.webkitTransform = 'rotate(' + (o.rotate | 0) + 'deg)'; }); tween.on('end', function(){ animate = function(){}; }); function animate() { raf(animate); tween.update(); } animate(); ``` ## API ### Tween(obj:Object|Array) Initialize a new `Tween` with `obj`. ### Tween#reset() Reset the tween. ### Tween#to(obj:Object|Array) Tween to `obj` and reset internal state. tween.to({ x: 50, y: 100 }) ### Tween#duration(ms:Number) Set duration to `ms` [500]. ### Tween#ease(fn:String|Function) Set easing function to `fn`. tween.ease('in-out-sine') ### Tween#update(fn:Function) Set update function to `fn` or when no argument is given this performs a "step". ### Tween#stop() Immediately stop the tween and emit "stop" and end" events. `tween.stopped` is then marked as `true`. ## License MIT