今回はオブジェクトに動きを加えたり、ちょっとしたアニメーションを付け加えるのにとっても役立つアニメーションライブラリのご紹介です。
anime.jsはとっても軽量でかつ簡単に使えるので去年あたりから人気が出始めているライブラリです。jQuery依存もしていませんのでこのライブラリだけ読み込めばOKです。
⇒anime.js公式サイト
ブラウザサポートはChrome、Safari、Opera、Firefox、IE 10+ですのでモダンブラウザは大丈夫です。
使い方
まだあまり出回っていないので実際は下記のgithubにあるマニュアルだけですね。
公式サイト
公式サイトを見ながら日本語訳していきます。
npm bower
以下のようにnpmもしくはbowerを使ってインストールするか公式サイトよりダウンロードして使うことが出来ます。
npm install animejs
bower install animejs
パラメータ
名前:デフォルト値 [使える値(真偽値、数値、function)]
- delay:0 [number, function (el, index, total)] どれくらい遅延するか、ミリ秒数
- duration:1000 [number, function (el, index, total)] どれだけの時間アニメーションを継続するか指示
- autoplay:true [boolean] 自動的に実行するかどうか
- loop:false [number, boolean] アニメーションを何回繰り返すかを指示します。trueなら無制限、数値なら数値分繰り返す
- direction:’normal’ [‘normal’, ‘reverse’, ‘alternate’] 通常、反対、いったりきたり
- easing:’easeOutElastic’ [下記のイージングリスト参照]
- elasticity:400 [number (高いほど強い)]
- round:false [number, boolean] 回転数
- begin:undefined [function (animation)] 始まったとき
- update:undefined [function (animation)] 更新したとき
- complete:undefined [function (animation)] 完了したとき
パラメータは、Objectを使用して個別にプロパティに設定できます。
特定のプロパティパラメータは次のとおりです。
- value (required)
- delay
- duration
- easing
translateYは要素を縦方向
translateXは要素を横方向
scaleは倍率、大きさを指定
rotateは回転、角度などをしていします。
イージングリスト
- easeInBack
- easeInBounce
- easeInCirc
- easeInCubic
- easeInElastic
- easeInExpo
- easeInOutBack
- easeInOutBounce
- easeInOutCirc
- easeInOutCubic
- easeInOutElastic
- easeInOutExpo
- easeInOutQuad
- easeInOutQuart
- easeInOutQuint
- easeInOutSine
- easeInQuad
- easeInQuart
- easeInQuint
- easeInSine
- easeOutBack
- easeOutBounce
- easeOutCirc
- easeOutCubic
- easeOutElastic
- easeOutExpo
- easeOutInBack
- easeOutInBounce
- easeOutInCirc
- easeOutInCubic
- easeOutInElastic
- easeOutInExpo
- easeOutInQuad
- easeOutInQuart
- easeOutInQuint
- easeOutInSine
- easeOutQuad
- easeOutQuart
- easeOutQuint
- easeOutSine
- linear
例として下記のように記述します。
サンプル1です。公式サイトと同じです。3つのクラスに色をつけて左右に動きをつけるモノです。
⇒デモを見てみる
サンプル2です。
こちらも公式サイトと同じですね。右に行ってそして大きくなって元に戻る
⇒デモを見てみる
サンプル3です。
簡単に縦の動きをつけたモノですね。こちらは画像にidをつけてわかりやすくしてあります。
⇒デモを見てみる
サンプル4です。横方向に動きます。
⇒デモを見てみる
サンプル5です。斜めに動きます。
⇒デモを見てみる
サンプル6です。単純に拡大させてイージングを変えてあります。
⇒デモを見てみる
サンプル7です。震える動きをつけました。
⇒デモを見てみる
参考になれば幸いです。
∞Tadashi Suyama∞