はじめに
このブログはAstroで作っているのですが、トップのスライダーでSwiperを使って実装したので解説します。また、テキストのフェードインはGSAPを使っているのでこちらも解説します。
👇CodeSandboxでのデモ
codesandbox.io
codesandbox.io
結論としては、Astroファイル内でも問題なくSwiper、GSAPは使えます。
ただし、Navigation、Autoplay、Parallaxなどを使うときにswiper/modules
からimportする必要があります。
それでは見ていきましょう
環境
Note
- Astro: 4.5.15
- Swiper: 11.1.1
- GSAP: 3.12.5
当ブログのスライダーの実装方法
トップのスライダーでは、スライダー切り替わり時にパララックスさせテキストも下からフェードインする形になります。
また、左側がテキストエリア、右側が画像となっていますのでこちらをマークアップしましょう。
ここでパララックスさせるためswiper-container
にdata-swiper-parallax-x="100%"
を付けます。
またスライダー切り替わり時に画像を拡大するためにimage
にもdata-swiper-parallax-scale="1.5"
を付けます。Swiperのパララックスに関しての公式のドキュメントはこちらです。
scriptのコード
scriptは以下になります。
はじめにで述べましたが、Navigation、Autoplay、Parallaxなどを使うときにswiper/modules
からimportする必要があります。
また、Swiperを初期化するときにmodules: [Autoplay, Parallax, Navigation]
を追加します。
GSAPについて
スライダー切替時にテキストをフェードインさせたいので、slideChangeTransitionStart
でGSAPでフェードインのコードを書いてます。
まとめ
当ブログのトップのスライダーを例にAstroでのSwiperの使い方を解説しました。
Astroでも問題なくSwiperを使えることが確認でき良かったです。
この記事が参考になれば幸いです。