slick Web制作 スライダー

【slick】特定のスライドだけ表示時間を変える方法

2021年8月28日

※ 当サイトではアフィリエイト広告を利用しています

スライダーで1枚ごとに表示時間を変えることって出来る?

普通のスライダーは全部表示時間が同じですが、1枚目だけ長くしたい時などたま〜にあります。

今回はslickを使ってその方法をご紹介します。

slickの基本的な使い方と、slickを使うのに必要なjQueryの使い方については以下の記事を参照下さい。

あわせて読みたい
レスポンシブ対応のスライダープラグイン slickの使い方
レスポンシブ対応のスライダープラグイン slickの使い方

続きを見る

あわせて読みたい
【初心者向け】jQueryとは?CDNを使った本体の読み込み方についても分かりやすく解説
【初心者向け】jQueryとは?CDNを使った本体の読み込み方も分かりやすく解説

続きを見る

またslickには色々カスタマイズが出来るオプションがあるので、そちらも合わせて活用すると実装出来るスライダーの幅が広がります。

あわせて読みたい
【slick】カスタマイズ用オプションまとめ一覧
【slick】カスタマイズ用オプションまとめ一覧

続きを見る

じゅんぺいブログは、Web制作コーディングWordPress制作)の技術記事を中心に、約500記事公開しています。ぜひ他の記事も参考にしてみてください!
完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適です。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇
(有料になっていたらすいません🙇‍♂️)

\ 完全無料 /

ZeroPlus Gate公式サイト

毎日先着制!

slickスライダーで特定のスライドだけ表示時間を変える方法

まずはデモを見てみます。

See the Pen
slick(時間調整)
by junpei (@junpei-sugiyama)
on CodePen.

1枚目のスライドはこの画像です。

チワワ

そして今回設定したのは、

  • 1枚目の初回は3000ミリ秒
  • 1枚目の2週目以降は100ミリ秒
  • 3枚目は500ミリ秒
  • それ以外は2000ミリ秒

となります(Rerunをクリックすればリロードされます)

 

コード解説

HTMLとCSSは特に変わった所はないので省略します(デモのHTMLとCSSをクリックすれば見れます)

今回のポイントとなるのはこちらのjQueryです。

$(".slider").slick({
  autoplay: true,
  autoplaySpeed: 3000 // 1枚目初回の秒数
})
.on("afterChange", function(event, slick, currentSlide) {
  switch (currentSlide){
    case 0:
      // 1枚目2週目以降の秒数
      $(this).slick("slickSetOption", "autoplaySpeed", 100);
      break;
    case 2:
      // 3枚目の秒数
      $(this).slick("slickSetOption", "autoplaySpeed", 500);
      break;
    default:
      // その他の秒数
      $(this).slick("slickSetOption", "autoplaySpeed", 2000);
      break;
    }
});

 

3行目

autoplaySpeed: 30001枚目の初回の秒数を設定します(単位はミリ秒)

ファーストビューなどに実装したスライダーで、1枚目だけ表示時間を長くしたいという事はあると思います。

2週目以降の1枚目のスライドの表示時間はこの後設定します。

 

5行目

afterChangeはスライドが切り替わった後に発生するイベントです。

つまり2枚目のスライド以降に発生するイベントになります。

5行目以降に1枚目のスライドの時間を設定していますが、1枚目の初回のみafterChangeは適用されないので、3行目で設定しています。

 

6行目以降

currentSlideに表示されているスライド番号が入ります。

それをswitch文を使って指定したスライドに対して時間を指定しています(currentSlidehは指定したオプションの値を変えるメソッド)

番号は0から始まるので、1枚目のスライドはcase 0となります。

 

スライドの表示時間で指定出来るのは、

  • 1枚目の初回
  • 1枚目の2周目以降
  • 1枚目以外の指定した番号
  • 指定した番号以外

となります。

まとめ

今回はslickで特定のスライドだけ表示時間を変える方法を解説しました。

あまり使う機会はないかと思いますが、1枚目だけ長く表示したいという場合はあるかも知れません。

以上になります。

関連記事slick記事一覧
関連記事Swiper記事一覧
関連記事Splide記事一覧

この記事が役に立ったと思ったら、シェアボタンからX(旧Twitter)などにシェアすると、いいねされてフォロワーが増えたりすることがあるよ!

 

  • この記事を書いた人

じゅんぺい

37歳からWeb制作とブログ開始。Web制作歴5年目でコーディングとWordPressオリジナルテーマ制作が中心。これまで120件以上を納品。当ブログ月間最高15万PVで、370記事以上はWeb制作の技術記事。コンテンツ販売→累計売上1200万円&1500部超え。X(旧Twitter)フォロワー7200人以上。2024年3月からブログの経験を活かしてライターとしても活動を開始。

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