<script type="text/javascript" src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/velocity/1.1.0/velocity.js"></script>
省略記法で記述する例
.velocity( 変形させたいパラメータ,(ハッシュ) アニメーション時間(ms), オプション(ハッシュ), 終了時実行関数(関数) )
例1:
$('#menu').velocity({
opacity : [ 1, 0 ],
translateY : [ 0, -50 ]
},600,{ easing: "easeOutCirc" } ,
function(){ console.log("complete !!"); }
);
例2:opacity と translateY それぞれに違うイージングをかけたい場合
$('#menu').velocity({
opacity : [ 1, 'easeInQuart', 0 ],
translateY : [ 0, 'easeOutQuart', -50 ]
},2000);
3つのアニメーションを連続して動かします。
$('#menu')
.velocity( { opacity: [ 1, 0 ], translateX: [ -30, 1250 ] },600, { easing: "easeOutCirc" } )
.velocity( { translateY: 10 }, 200 )
.velocity( { translateY: 0 }, 200 );
.velocity.ui を追加で読み込ませます。
<script src="https://cdnjs.cloudflare.com/ajax/libs/velocity/1.2.3/velocity.ui.min.js"></script>
Velocity.RegisterEffect でアニメーションを定義して velocityで呼び出します。
stagger が1つ1つの要素を順番にアニメーションしていく際の待ち時間になります。
$.Velocity.RegisterEffect("trans.my_effect", {
defaultDuration: 500,
calls: [[ { opacity: [1,0], scaleX:[ 1, 0.1 ], scaleY:[ 1, 0.1 ] }, 1.00, { easing: "easeOutCirc" } ]]
})
$('#menu li').css({opacity:0}).velocity("trans.my_effect", {
easing : 'ease-in-out',
duration: 1000,
stagger : 150
});