0
0

slickを使ってスライダーを作ろう【初級編④】

Last updated at Posted at 2024-08-26

はじめに

今回は、slickというプラグインを使ってシンプルなスライダーを制作していきます。下記は、制作するスライダーのワイヤーフレームです。ここから更に装飾や動きについて考えていきます。

名称未設定-1_アートボード 1.png

slickの使い方

slickとは

slickとは、「スライダーを作るためのプラグイン」です。レスポンシブにも対応しており、カスタマイズの幅も広いため、世界中で使用されています。

slickで何ができるの?

slickを使えば、文字や画像が切り替わるスライダーを簡単に作成することができます。特にカルーセル(真横にスライドするスライダー)に関するオプションが豊富でカスタマイズしやすいです。

slickの導入方法

slickを使うには、大きく分けて「CDNを使う」か「ファイルをダウンロードする」かの2通りがあります。

どちらの場合でも必要なのが「slick.min.js」と「slick.css」です。slickは、jQueryベースのプラグインなので、必ずjQueryファイルを作成します。

①ファイルをダウンロードする場合

ファイルをダウンロードする場合は、公式サイトの「get it now」をクリックします。

001.png

次に「Download now」をクリックします。Zipファイルがアップロードされるので、解凍し中にあるslick.min.jsslick.cssを各ファイルに入れます。

002.png

読み込む順番に注意してhead内に記載していきます。

aaa_アートボード 1.png

<link rel="stylesheet" href="css/slick.css" />
<link rel="stylesheet" href="css/style.css" />
<script src="https://code.jquery.com/jquery-3.7.1.js" integrity="sha256-eKhayi8LEQwp4NKxN+CfCh+3qOVUtJn3QNZ0TciWLP4=" crossorigin="anonymous"></script>
<script src="js/slick.min.js"></script>
<script src="js/main.js"></script>

②CDNの場合

<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick-theme.css" />
<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css" />
<link rel="stylesheet" href="css/reset.css" />
<link rel="stylesheet" href="css/style.css" />
<script src="https://code.jquery.com/jquery-3.7.1.js" integrity="sha256-eKhayi8LEQwp4NKxN+CfCh+3qOVUtJn3QNZ0TciWLP4=" crossorigin="anonymous"></script>
<script type="text/javascript" src="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script>
<script src="js/main.js"></script>

HTMLのhead内に上記をコピペするだけです。ですが、この方法だとオフライン環境では使えない(=ローカルで検証できない)といったデメリットがあります。jsファイルの記載場所は、bodyタグの手前に配置します。

今回は、②のCDNを使用する方法で、進めていきます。

slickの基本編

HTML5の書き方

<div class="slider">
  <div>スライド1</div>
  <div>スライド2</div>
  <div>スライド3</div>
</div>

jQueryの書き方

$(function(){
  $('.slider').slick();
  // その他のオプション
});

slickのオプション一覧

コードを書く際に、知っておくと便利なオプションをまとめました。

表示に関するオプション

項目 仕様
arrows 左右矢印を表示する。
dots ページ送りを表示する。
slidesToShow スライダーの表示数
slideToScroll 一度にスクロールする数。

動きに関するオプション

項目 仕様
infinite 無限にスライドする。
fade スライド切り替え時にフェードイン・アウトする。
speed フェードのスピード。
autoplay 自動再生する。
autoplaySpeed 自動再生時のスライド切り替えのスピード。
vertical 縦方向にスライドする。

ユーザーの操作に関するオプション

項目 仕様
accessibility タブまたは矢印でスライドの切り替えができる。
swipe スワイプできる。
verticalSwiping 垂直方向にスワイプできる。
focusOnSelect コンテンツをタッチすると中央に移動する。
pauseOnHover マウスオーバー中は、スライドを停止する。
pauseOnFocus スライダーのドットをクリックした時に自動再生を一時停止する。

カスタマイズのためのオプション

項目 仕様
prevArrow 前矢印のHTMLカスタマイズ。
nextArrow 後矢印のHTMLカスタマイズ。
<!-- 前矢印 -->
<button type="button" class="slick-prev">Previous</button>
<!-- 後矢印 -->
<button type="button" class="slick-next">Next</button>

slickの実践編

See the Pen slickを使ってスライダーを作ろう by Uka Suzuki (@uukasuzuki_) on CodePen.

疑問

今回の制作で、疑問が2つあります。

①スライダーの矢印が表示できません。jsファイルにarrowsと記載していますが、隠れているのか、反映されませんでした。

②HTMLに記載するため、画像のURLを取得したいです。フリー写真のURLをHTMLに記載するためにはどうやればいいでしょうか?

まとめ

display: flex;など使わなくても自然に横並びにしてくれる機能は使いやすいと感じました。今後、オプションを覚えながらもっと動きをつけていきたいです。

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0