【デモあり】Swiper.jsを使ってみた

スポンサーリンク
Swiperアイキャッチ プログラミング

こんにちは!セミマサです。

非常に評価の高いスライダープラグイン「Swiper.js」を使ってみました!3パターン制作したので備忘録としてそれぞれのポイントをまとめていきたいと思います。

デモサイト

下のボタンから今回のデモサイトへ行けます。

共通部分のCSS

3つあるデモスライダーの共通CSSです。

サンプル1

アクティブでないスライドを暗くしてみました。

HTML

1つ目のスライダーのHTMLです。

CSS

1つ目のスライダーのCSSになります。ポイントは下記2点です!

  • アクティブじゃないスライドはfilterプロパティのbrightness関数で明度を下げる
  • アクティブなスライドのみ明度を元に戻す

Script

1つ目のスライダーのスクリプト部分です。指定したオプションの内容について紹介します。

  • navigation:アローボタンの紐付けをします。
  • loop:trueにするとスライドがループするようになります。
  • autoplay:自動再生に関するオプションです。今回の設定では5秒ごとにスライドが切り替わり、ユーザーが操作した場合自動再生が止まります。
  • pagination:ページネーションの紐づけと見た目の設定をします。
  • slidesPerView:同時に表示されるスライドの枚数を指定します。
  • spaceBetween:スライド間の余白を指定します。
  • initialSlide:最初に表示するスライドの番号です。
  • speed:スライドの遷移時間です。デフォルト値は300で、これより大きいと遅くなり小さいと早くなります。
  • centeredSlides:trueにするとアクティブなスライドが中央に来ます
  • breakpoints:ウィンドウサイズ毎にオプションの指定を変更できます。

サンプル2

スライダー内の画像をクリックするとボックスの内容が変わります。

HTML

2番目のスライダーのHTMLです。

CSS

2番目のスライダーのCSSです。

Swiperのアローボタンはbackground-imageで任意の画像を指定すると上書き可能なので、自作した矢印を指定しています。

Script

2番目のスライダーのスクリプト部分です。Swiperの設定に関しては既出なので省略します。

・「toggleClass」を用いてクリックされた画像に「is-active」クラスを付与しそれ以外のものの「is-active」クラスを外しています。

・条件分岐部分はクリックされた画像が持っているクラスに応じて、「content-text」クラスのテキストと「content-window」クラスの背景色を変更する処理になります。

サンプル3

ホラーっぽい演出ができないかどうか試してみたものになります。

HTML

3番目のスライダーのHTMLです。

CSS

3番目のスライダーのCSSです。背景色を黒にして文字を赤くするだけでホラー感がアップする気がします。

Script

3番目のスライダーのスクリプト部分です。「autoplayのdelay」と「speed」をいい感じになるまで調整しました。effectをflipにするとチラつきが少ないと思います。

ウィンドウのリサイズが行われると自動再生が止まってしまいますがこのサンプルでは止めたくありませんでした。resize()メソッド内でスライダーの「autoplay.paused」をfalseにし、「autoplay.start()」することで解決!

おわりに

実際に使ってみてSwiper.jsの高機能さがよくわかりました。色々作れそうで面白いですね。

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