実装イメージ
事前準備
公式からファイルをダウンロード
https://kenwheeler.github.io/slick/ にアクセスし、以下の「Download Now」からプログラムファイルをダウンロードします。
ダウンロードされたフォルダ構成
ダウンロードされたファイルの中を見てみると、以下のような感じのフォルダ構成になっていると思います。
このうち、実際に自分のプロジェクトに移して使用するのは、以下の5つです。
- fonts(フォルダ)
- ajax-loader.gif
- slick.min.js
- slick-theme.scss
- slick.scss
ダウンロードファイルそれぞれの配置
自分のプロジェクトにおける適切なフォルダに、先ほどの5つのファイルをコピーします。
それぞれのコピー先は以下の通りです。
app/assets/
fontsのフォルダまるごと
app/assets/images
ajax-loader.gif
app/assets/javascripts
slick.min.js
app/assets/stylesheets
slick.scss
slick-theme.scss
画面に組み込む
今回は、aboutページにカルーセルを導入する例をご紹介します。
HTML側を編集
まずはカルーセルを表示するためのタグを用意します。
aboutページのファイルに以下のタグを追加します。
ここでは3つの画像をカルーセルとして採用していますが、いくつでも指定することが可能なので好きな数やってみてください。
使用する画像ファイルは、あらかじめ app/assets/images のフォルダに入れておきます。
javascript側を編集
次にカルーセルが動作するように js のコードを追加していきます。
jsのコードを追加する場所は任意なので、application.js などに記載してもいいですし、about.html.erb に <script> タグで記載する方法もあります。(どっちでも大丈夫です)
$(‘.slicker’) の部分は、html側の div タグの class で指定した値(class=”slicker”)と合わせてあげるのがミソです。
この状態で画面を確認してみると、カルーセルが動作し、3秒おきに画像が自動で変化しているのが確認できると思います!
デザインのカスタマイズ
ここで解説を終わると少し物足りないので、デザインのカスタマイズ方法を少しだけ解説しておきます。
ドットの表示
jsのコードの部分を以下のように変更します。
この変更だけで画像の下側にドットが出るようになったと思います。
しかし、cssのデフォルトの設定ではドットが小さすぎて見えなかったり、背景色が黒で同化してしまって見えないこともあります。
なので、slick導入時に入れたファイルのうち、slick-theme.scssのファイルを少し変更します。
“$”(ドルマーク)で始まってるものが、css上の変数なので、これを変えてあげることでデザインを簡単に変更することができます。
今回で言えば、変更したのは以下の2つの変数のみです。
まとめ
slick を用いてカルーセルを簡単に実装する方法を解説しました!
手順をざっくりまとめると以下のような流れです。
- slickの公式サイトから必要なファイルをダウンロード
- そのファイルを自分のプロジェクトの適切な場所に入れる
- HTML、js にカルーセル用の記述をする
公式サイトには、色々なカスタマイズ例が載っているので試してみてください。
コメント