スクロールに応じてアニメーションを実装できるJSライブラリを紹介します。
AOSの紹介
スクロールに応じて要素にアニメーションを実装することができるライブラリです。
フェード、フリップ、ズームなど、様々なアニメーションを実装することができます。
アニメーションの速度や種類もシンプルに設定することができ、モバイル端末や画面の横幅が一定以下の環境ではアニメーションを無効にできるなど、必要なオプションが揃っています。
使い方
ソースコードはGitHubで公開されています。
基本の使い方
CSS
スタイルシートを読み込みます。
<link rel="stylesheet" href="bower_components/aos/dist/aos.css" />
HTML
アニメーションを実行したい要素に、data-aos
属性をつけます。
<div data-aos="fade-up"></div>
JS
スクリプトを読み込みます。
<script src="bower_components/aos/dist/aos.js"></script>
スクリプトを実行します。
<script> AOS.init(); </script> </body>
これで、アニメーションの実装ができます。
オプション
速度やアニメーションの調整など、様々なオプションもいろいろと用意されています。
<div data-aos="fade-zoom-in" data-aos-offset="200" data-aos-easing="ease-in-sine" data-aos-duration="600">
オプションは、個別の要素ではなく、全体に共通で設定することもできます。
<script> AOS.init({ offset: 200, duration: 600, easing: 'ease-in-sine', delay: 100, }); </script>
モバイル端末ではアニメーションを無効にすることができます。設定できるのは、mobile(phone & tablet)、phone、tabletの3種類です。
<script> AOS.init({ disable: 'mobile' }); </script>
画面の横幅によって無効にすることもできます。
<script> AOS.init({ disable: window.innerWidth < 1024 }); </script>