GSAP(ジーサップ・GreenSock Animation Platform)とは、GreenSock社が開発しているアニメーションライブラリである。
GreenSock社はTweenMaxなどアニメーションに関連する多くのライブラリを作成している会社で、GSAP3からTweenMaxなどもひとつにまとめられて使いやすくなった。
GSAPを使うと簡単にハイパフォーマンスのWebアニメーションを実装できる。
GSAPの主なモジュールはトゥイーンを実現するTweenMaxとタイムライン を制御するTimelineMaxのふたつである。
アニメーションは主に演出として使用や、ユーザーの視線誘導(インタラクションデザイン)で使用されることがあるが、Awwwardsで入賞経験のあるサイトのトレンドを分析すると、90パーセント以上のサイトがアニメーションを使っていて、65パーセントサイトがGSAPを使っているという結果があるそうで、いまやアニメーションの実装は不可欠であり、その実装を長年にわたって助けているGSAPは世界でも有数の優れたライブラリである。
独自のライセンスを採用しており、無料で公開されているサイトであれば無料だが、有料なコンテンツがある場合は有料のライセンス契約が必要。
参考:https://rfs.jp/sb/javascript/03js/greensock.html
読み込み
下記のように、コアとGSAPのプラグインを読み込むようなパターンが多い。
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/x.x.x/gsap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/x.x.x/ScrollTrigger.min.js"></script>
イージングの種類
標準で多くのイージングが用意されている。
https://greensock.com/docs/v3/Eases
使用例
document.addEventListener('DOMContentLoaded', function() {
var $hoge = document.querySelector('.hoge');
var img = new Image();
img.onload = img.onerror = function() {
// animation start
var startTime = 0.1;
gsap.to('.hoge',
{
autoAlpha: 1,
delay: startTime,
duration: 0.5,
ease: Circ.easeOut,
}
);
};
img.src = $hoge.getAttribute('src');
});