1. HOME
  2. B'scre8
  3. ホームページ設計・制作
  4. 【スクロールに応じた表現】2分でお手軽に?ScrollRevealで簡単にスクロールに応じたエフェクトを実装
ホームページ設計・制作

【スクロールに応じた表現】2分でお手軽に?ScrollRevealで簡単にスクロールに応じたエフェクトを実装

こんにちは。デザイナーの野尻です。
今回は、今どきのウェブサイトを作るのに欠かせない「スクロールに応じた動き」を簡単に実現するScrollRevealを動かしてみたいと思います。

準備

ライブラリをscriptタグで読み込み



これだけ!
あとは対象の要素にクラスを与えてJavaScriptからアニメーションを指定する感じになります。

注意
ライブラリを読み込ますタイミングが非常に重要です!
動かしたい要素より、ライブラリが先に読み込まれないと、全然動いてくれません(これにめちゃくちゃハマりました)
headに設置してもピクリともしない方は、</body>直前などにライブラリを設置すると幸せになれるかも

それでは動かしてみます!

スクロールに応じてふわっと表示

fadeというクラスを付与した画像に対してアニメーション指定します



どうでしたでしょうか?
一瞬過ぎてわからないので、ちょっとゆっくり動かしてみます。

スクロールに応じてゆっくりふわっと表示

fade2というクラスを付与した画像に対してアニメーション指定します



durationというオプションを指定して、アニメーションが実行されるまでの時間を長くし、ゆっくり表示しています。

こんな感じの要領で、色々なオプション指定をすることが可能です。

オプション 説明
delay ミリ秒単位の時間 アニメーションが実行されるまでの時間
distance px/em/% 表示された時に要素が移動する距離
duration ミリ秒単位の時間 アニメーションの完了にかかる時間
duration CSS timing function(ease,ease-inなど) アニメーションがどのように遷移するか
delay ミリ秒単位の時間 アニメーションが実行されるまでの時間
interval ミリ秒単位の時間 各公開間の時間
opacity 0~1 表示される前の不透明度
origin top/right/bottom/left 要素がどの方向から来るか
scale 数字 表示される前の要素のサイズ
desktop true/false デスクトップブラウザでアニメーションを有効/無効にする
mobile true/false モバイルブラウザでアニメーションを有効/無効にする
reset true/false viewportを離れる時に初期化された位置に戻る要素を有効/無効にする

いかがでしたでしょうか?
今夏リニューアル予定の自社サイトでは、こちらのスクリプトをゴリゴリ使っていい感じの演出をできればなーと考えております。
乞うご期待!