• 最終更新日
  • Java Script / jQuery

wow.jsとanimate.cssを使ってスクロール連動型のアニメーションを実装する!

「wow.js」というjQueryプラグインを使うとスクロールに合わせたアニメーションが可能です。

前回、紹介した「animate.css」はページが読み込まれるとアニメーションが始まってしまうため、下の方の要素にアニメーションを設定してもスクロールした時にはすでに止まっています。

繰り返しリピートの設定をしてないと意味が無いですね。でも「wow.js」とセットで使えば設定した要素へスクロールした時にアニメーションが始まってくれます。

wow.jsをダウンロードする

wow.js

wow.js

「wow.js」のサイトへ行くとポップな感じでめっちゃ犬がいます(笑)。ページをスクロールをするとアニメーションの動きも確認できます。

ファイルをダウンロードするにはこちらの「GitHub」のページからおこなえます。

wow.jsのダウンロード

①の「Code」をクリックするとボックスが表示されるので、その中にある②の「Download ZIP」からダウンロードしましょう。

必要なのは「wow.min.js」のみです。ファイルがある場所は解凍したフォルダの中の「dist」の中です。

ここには「wow.js」と「wow.min.js」がありますが同じ内容のファイルです。より容量の小さい「wow.min.js」を使用しましょう。

wow.jsの導入方法

それでは「wow.js」と前回紹介した「animate.css」の両方を設定していきます。

「animate.css」のファイルも必要になりますので「animate.cssを使ってアニメーションを追加!簡単にできる導入・使用方法」を参考にダウンロードしておいてください。

index.html

            
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>wow.jsを使ったアニメーション</title>
  6. <link type="text/css" rel="stylesheet" href="css/animate.min.css">
  7. <style>
  8. * {
  9.   margin: 0;
  10.   padding: 0;
  11.   box-sizing: border-box
  12. }
  13.  
  14. html {
  15.   font-family: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo UI", "Meiryo", "MS PGothic", sans-serif;
  16.   font-size: 62.5%;
  17.   letter-spacing: 0.09em;
  18.   font-feature-settings: "palt"
  19. }
  20.  
  21. p {
  22.   font-size: 2rem;
  23.   font-weight: 600;
  24.   text-align: center;
  25.   margin: 100px 0
  26. }
  27. </style>
  28. </head>
  29. <body>
  30.   <p class="animate__animated animate__bounce wow" data-wow-delay="0.6s">wow.jsを使ったアニメーション</p>
  31. <script type="text/javascript" src="js/wow.min.js"></script>
  32. <script>
  33.   new WOW().init();
  34. </script>
  35. </body>
  36. </html>

HTMLファイルは上記をコピペしてください。それではそれぞれをファイルの設置場所も確認しておきます。

wow.jsの設置場所

上記のようにファイルを設置できたらブラウザでアニメーションをご確認頂けます。あとはindex.htmlに記述している大事なところをチェックしていきましょう。

            
  1. <p class="animate__animated animate__fadeInUp wow" data-wow-delay="0.6s">wow.jsを使ったアニメーション</p>

「animate__animated」と「animate__fadeInUp」はanimate.cssの設定です。アニメーションさせたい要素に「animate__animated」を付け、「animate__fadeInUp」でアニメーションの種類を指定しています。

「wow」がスクロール連動の指定です。さらに「data-wow-delay="0.6s"」で表示するタイミングを設定します。

wow.jsのオプション設定は「data-wow-delay」の他にもありますので次項で紹介します。

            
  1. <script type="text/javascript" src="js/wow.min.js"></script>

次に「wow.min.js」の読み込みです。

大体のjQueryは使用する時に「jquery.js」も読み込まなければいけないんですが、「wow.js」の場合は読み込む必要がありません。

            
  1. <script>
  2.   new WOW().init();
  3. </script>

最後にコレ、これの記述を忘れると動かないので注意してください。

wow.jsの設定とデモ

それでは「wow.js」で設定できるオプションとその動きについて紹介します。

data-wow-duration

アニメーションの継続時間。「2s」とすると2秒かけてアニメーションします。

data-wow-durationの設定

                        
  1. <p class="animate__animated animate__fadeInUp wow" data-wow-duration="2s">data-wow-durationの設定</p>
data-wow-delay

アニメーション開始のタイミング。「1s」とすると1秒後にアニメーションします。

data-wow-delayの設定

                        
  1. <p class="animate__animated animate__fadeInUp wow" data-wow-delay="1s">data-wow-delayの設定</p>
data-wow-offset

アニメーションをスタートさせる位置。「200」とすると設定した要素が下から200pxの位置に来るとアニメーションします。

data-wow-offsetの設定

                        
  1. <p class="animate__animated animate__fadeInUp wow" data-wow-offset="200">data-wow-offsetの設定</p>
data-wow-iteration

アニメーションのリピート回数。「3」とすると3回繰り返しアニメーションします。

data-wow-iterationの設定

                        
  1. <p class="animate__animated animate__fadeInUp wow" data-wow-iteration="3">data-wow-iterationの設定</p>

スクロールして指定した要素がちょっとでも見えたらアニメーションが始まりますからねぇ、確認しづらい場合はページを再読み込みして動きをご確認ください(笑)。

あとはご自身の環境で確認して頂く方が良いですね。オプションの数値などを色々変更して試してみてください。

ホームページの簡単な作り方以外にも
お得な情報や日常を紹介するブログも是非どうぞ!
Webに関連するレンタルサーバーなどの特徴・料金比較や、
個人的に挑戦している資格取得についての勉強法やグルメなどを紹介しています。