jQueryとCSSを組み合わせて動かす

スポンサーリンク

jQueryとCSSを組み合わせて「動くきっかけを指定して動かす」方法を理解します。

基本的な考え方

動くきっかけを指定するには、HTML内の「動かす要素」に「動くきっかけの起点となるクラス名」を付け(クラス名は自由に設定可能です)、jQuery側で動くきっかけの動作(スクロールなど)をしたら、アニメーション用のCSSのクラス名が付与されるという指定をします。

1)HTML内の動かす要素に「動くきっかけの起点となるクラス名」を付ける

まず、「ふわっ」という動くきっかけの起点となるクラス名を「fadeUpTrigger」と付けます。すでにクラス名が記述されているときには、クラス名の前に半角スペースを入れます。
また、「動くきっかけの起点」に到達するまで要素が出現しないようにするには、「fadeUpTrigger」に「透過0(opacity:0;)の指定を書きます。

●クラス名の付与

<p class=”box fadeUpTrigger”></p>

 ●動くきっかけの起点となるクラス名に「透過0(opacity:0)」の指定

.fadeUpTrigger{
  opacity: 0;
}

2)jQuery側で動くきっかけの動作(スクロールなど)を指定する

●jQueryと自作のJavaScriptファイルを読み込む

</body>タグの直前に、以下のようにjQueryと自作のJavaScriptファイルを読み込む指示を記述します。

●jQueryと自作のJavaScriptファイルを読み込む指示

 <!– 1.jQuery –>
  <script src=”https://code.jquery.com/jquery-3.6.0.min.js” integrity=”sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=” crossorigin=”anonymous”></script>
  <!– 2.自作のJavaScript –>
 <script src=”js/script.js”></script>
</body>

●jQueryを使ってアニメーションするCSSのクラス名を付与

自作のJavaScriptファイル内に「動くきっかけの起点となるクラス名(fadeUpTrigger)」に「動くきっかけ(スクロールなど)」で「アニメーションをするCSSのクラス名が付与(fadeUp)」されるように指定します。

3)アニメーション用のCSSのクラス名が付与されてアニメーションが発動する

●動くきっかけ(スクロールなど)でアニメーションを指定したCSSのクラス名が付与される

<p class=”box fadeUpTrigger fadeUp“></p>
※クラス名「fadeUp」がjQuery側で付与される。

●jQueryで付与されたアニメーション用のCSSのクラス名(fadeUp)には「透過していた要素を下から出現」する指定を行う

.fadeUp{
  animation-name: fadeUpAnime;
  animation-duration: 2s;
  animation-fill-mode: forwards;
  opacity:0;
}
@keyframes fadeUpAnima{
  from{
    opacity:0;
    transform:translateY(100px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

 

タイトルとURLをコピーしました