Swiper Web制作 スライダー

【Swiper】サムネイルクリックで画像が切り替わるスライダーの作り方

【Swiper】サムネイルクリックで画像が切り替わるスライダーの作り方
Swiperでサムネイル付きのスライダーって作れない?

メインのスライダーの下にサムネイルがあり、それをクリックするとメインのスライドが切り替わるタイプのスライダーの作り方を解説していきます。

Swiperの基本的な使い方については以下の記事を参照下さい。

jQuery不要】スライダープラグイン Swiper.jsの使い方

効率よくコーディングしたい人はこちら

Swiperでサムネイルクリックで画像が切り替わるスライダーの作り方

まずは基本となるスライダーはこちらになります。

See the Pen
Swiper(矢印、ドットインジケーター)
by junpei (@junpei-sugiyama)
on CodePen.

前後の矢印、ページネーションが表示されているシンプルなスライダーです。

今回はサムネイルを表示させたいのですが、HTMLはスライダー部分は基本のスライダーと同じです(スクロールバーとページネーションは外しています)

あとはサムネイル用のHTMLを追加します。

<!-- スライダー -->
<div class="swiper slider">
  <div class="swiper-wrapper">
    <div class="swiper-slide">
      <img src="画像パス1" alt="" />
    </div>
    <div class="swiper-slide">
      <img src="画像パス2" alt="" />
    </div>
    <div class="swiper-slide">
      <img src="画像パス3" alt="" />
    </div>
  </div>
  <!-- 前後の矢印 -->
  <div class="swiper-button-next"></div>
  <div class="swiper-button-prev"></div>
</div>

<!-- サムネイル -->
<div class="swiper slider-thumbnail">
  <div class="swiper-wrapper">
    <div class="swiper-slide">
      <img src="画像パス1" alt="" />
    </div>
    <div class="swiper-slide">
      <img src="画像パス2" alt="" />
    </div>
    <div class="swiper-slide">
      <img src="画像パス3" alt="" />
    </div>
  </div>
</div>

サムネイルのコードも前後の矢印以外はスライダーと同じです。

CSSはこちらです。

.slider-thumbnail .swiper-slide {
  opacity: .5;
  transition: opacity .5s;
  width: calc(100% / 3);
}
.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
}

サムネイルは3枚なので幅は横幅の1 / 3にしています(レイアウトのためのスタイルは省略しています)

あとは現在選択されているサムネイル以外の透過度をopacityで少し下げています。

JavaScriptはこちらです。

// サムネイル
const sliderThumbnail = new Swiper(".slider-thumbnail", {
  slidesPerView: 3, // サムネイルの枚数
});
// スライダー
const slider = new Swiper(".slider", {
  loop: true,
  // 前後の矢印
  navigation: {
    nextEl: ".swiper-button-next",
    prevEl: ".swiper-button-prev",
  },
  thumbs: {
    swiper: sliderThumbnail,
  },
});

最初にサムネイルの枚数などを指定し、次に通常のスライダーのコードとなります。

スライダーのコードを先に書くと動かないのでご注意ください。

そしてこちらがデモになります。

See the Pen
Swiper()
by junpei (@junpei-sugiyama)
on CodePen.

前後の矢印、サムネイルどちらをクリックしてもスライドが切り替わります。

 

フェードで切り替える

フェードで切り替える場合は、JavaScriptにeffect: "fade",を追加すればOKです。

See the Pen
Swiper(サムネイルクリックで画像が切り替わる:フェード)
by junpei (@junpei-sugiyama)
on CodePen.

以上になります。

関連記事slick関連記事
関連記事Swiper関連記事
関連記事スライダー関連記事

 

コーディング案件の単価と作業効率を上げる!

Brain総合ランキング1位獲得 & 3日で500部突破

累計670部突破

クチコミ約370件
(平均スコア

今だけ!5つの無料特典あり🎁

👇画像をクリック

  • この記事を書いた人

じゅんぺい

タイ・バンコク在住のWeb制作フリーランス兼ブロガー▶︎37歳からWeb制作を開始▶︎コーディングとWordPressのオリジナルテーマ制作でこれまで80件以上納品▶︎Web制作中心の当ブログは月8.4万PV▶︎Twitterのフォロワーは5700人▶︎コーディングとWordPressのコンテンツを販売し、3日で500部突破&250万円&人気1位獲得 → 累計390万円突破

-Swiper, Web制作, スライダー
-,