Web制作 スライダー

【slick】ドットインジケーターをカスタマイズする方法

【slick】ドットインジケーターをカスタマイズする方法
slickのドットインジケーターってカスタマイズ出来ない?

今回はそんな疑問にお答えします。

ドットインジケーターとはスライダーの下にあるドットの事で、スライドの枚数分あり、ドットをクリックするとそのスライドに移動します。

このデザインを変える方法を解説していきます。

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

レスポンシブ対応のスライダープラグイン「slick」の使い方

【初めて使う人向け】jQuery本体を読み込む方法

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

slickのカスタマイズ用オプション一覧をご紹介

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

slickのドットインジケーターをカスタマイズする方法

まずはデフォルトの状態を見てみましょう。

See the Pen
slickドットインジケーター(デフォルト)
by junpei (@junpei-sugiyama)
on CodePen.

jQueryのコードを簡単に解説をします。

$(function () {
  $(".slider").slick({
    arrows: false,
    autoplay: true,
    adaptiveHeight: true,
    dots: true,
  });
});
arrows前へ次への矢印(初期値:true)
autoplay自動再生(初期値:false)
adaptiveHeightスライドの高さの自動調整(初期値:false)
dotsドットインジケーターの表示(初期値:false)

今回は前へ次への矢印は不要なので非表示にしています。

あとドットインジケーターはデフォルトでは非表示なので、これをtrueにして表示させています。

 

スライドが6枚あるので、スライドの下に6つドットがありますね。

ドットは灰色ですが、表示されているスライドの位置にあるドットは黒になっています。

これを変えていくので、

  • 表示されているスライドのドット
  • 表示されていないスライドのドット

この2種類のドットを変更していくので、2種類の画像を用意して下さい。

 

ドットのclassを変更する(slickオプション)

ドットインジケーターはulタグとliタグで作られており、ulタグにはデフォルトで slick-dots というclass名が付いています。

まずはこのclass名をオプションを使って変更します。

$(function () {
  $(".slider").slick({
    arrows: false,
    autoplay: true,
    adaptiveHeight: true,
    dots: true,
    dotsClass: "slide-dots" //ここでclass名を変更する(デフォルトはslick-dots)
  });
});

これでデフォルトのスタイルは解除されました。

あとは自由にカスタマイズしていくだけです。

まずは完成形を見てみましょう。

See the Pen
slickドットインジケーター(カスタマイズ)
by junpei (@junpei-sugiyama)
on CodePen.


CSSはこちらです。

.slider {
  margin: 0 auto;
  max-width: 500px;
  width: 80%;
}
.slider-img img {
  height: auto;
  width: 100%;
}
.slide-dots {
  margin: 0;
  padding: 0;
  text-align: center;
}
.slide-dots li {
  display: inline-block;
  margin: 0 10px;
}
.slide-dots li button {
  position: relative;
  text-indent: -9999px;
}
.slide-dots li button::before {
  background-image: url(表示されてない用の画像のパス);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  cursor: pointer;
  height: 13.5px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 24px;
  width: 13.5px;
}
.slide-dots li.slick-active button::before {
  background-image: url(表示されてる用の画像のパス);
}
button {
  background: none;
  border: none;
  outline: none;
  padding: 0 7px;
}

marginやpadding、widthやheightなどは都度調整して頂ければとお持ちます。

あとはスライドが表示されてる用の画像パスと、表示されてない用の画像パスを入れればOKです。

以上です。


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

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

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

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

👇画像をクリック

  • この記事を書いた人

じゅんぺい

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

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