シンプルなものから一風変わったスライダーまで実装できる高機能なjQueryスライダー「Slider Pro」

シンプルなものから一風変わったスライダーまで実装できる高機能なjQueryスライダー「Slider Pro」

シンプルなものから一風変わったスライダーまで実装できる高機能なjQueryスライダー「Slider Pro」
  • シェアしてね♪
  • このエントリーをはてなブックマークに追加


  • Youtube動画変換・ダウンロードおk!
  • このエントリーをはてなブックマークに追加

Slider Proは、非常に高機能なスライダーのjQueryプラグインで、シンプルなものから一風変わったスライダーまで実装可能です。

デモは公式サイトで確認できます。

デモページを見る

今回は、Slider Proの導入手順について紹介いたします。本当に機能が豊富で、かなり凝ったスライダーを実装できますよ。

スポンサードリンク

ステップ1. Slider Proのダウンロードとファイルの設置

まずは公式サイトからSlider Proをダウンロードします。公式サイトにアクセスすると、下の方に「Get the jQuery plugin」というのがありますので、[Download]をクリックします。

Slider Proのダウンロード

Slider Proをダウンロードしたら、以下のファイルをサーバーの適当な場所にアップロードします。

  • dist/js/jquery.sliderPro.min.js
  • dist/css/slider-pro.min.css
  • dist/css/imagesフォルダ

dist/css/imagesフォルダは、slider-pro.min.cssと同じフォルダ内に設置します。例えば、cssというフォルダ内にslider-pro.min.cssを設置したら、cssフォルダ内にimagesフォルダ毎設置してください。

サーバーにファイルを設置したら、HTMLファイルに以下を追加します。<head>~</head>内に記述すればOKです。

<link rel="stylesheet" href="css/slider-pro.min.css">
<script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
<script src="js/jquery.sliderPro.min.js"></script>

パスは適宜変更してください。

WordPressのテーマディレクトリ内に設置する場合は、以下のようになります。

header.php
<link rel="stylesheet" href="<?php echo get_template_directory_uri(); ?>/css/slider-pro.min.css">
<script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
<script src="<?php echo get_template_directory_uri(); ?>/js/jquery.sliderPro.min.js"></script>

上記をheader.phpに追加しましょう。

ステップ2. スライドの追加

ファイルの設置ができたら、スライドを追加します。スライダーを表示させたい場所に以下を記述します。

<div class="slider-pro" id="slider-sp">
<div class="sp-slides">
<div class="sp-slide"><img src="images/slide/slide1.jpg"></div>
<div class="sp-slide"><img src="images/slide/slide2.jpg"></div>
<div class="sp-slide"><img src="images/slide/slide3.jpg"></div>
</div>
</div>

スライド全体を#slider-spで内包します。ID名は何でもOKです。それから、各スライド画像を.sp-slideで内包し、スライド画像全体を.sp-slidesで囲います。

ステップ3. Slider Proの呼び出し

スライド用の画像が設置できたら、いよいよSlider Proを呼び出してスライダーを動かします。以下を</body>直前に追加しましょう。

<script>
$(document).ready(function(){
$( '#slider-sp' ).sliderPro();
});
</script>

#slider-spのところは、スライド全体を囲っているID名を入れてください。

基本的な使い方は以上です。

サムネイル付きスライダー

サムネイルも表示させたい場合は、スライド部分を以下のように記述します。

<div class="slider-pro" id="slider-sp">
<div class="sp-slides">
<div class="sp-slide"><img src="images/slide/slide1.jpg"></div>
<div class="sp-slide"><img src="images/slide/slide2.jpg"></div>
<div class="sp-slide"><img src="images/slide/slide3.jpg"></div>
</div><!-- //sp-slides -->
<div class="sp-thumbnails">
<img class="sp-thumbnail" src="images/slide/slide1.jpg">
<img class="sp-thumbnail" src="images/slide/slide2.jpg">
<img class="sp-thumbnail" src="images/slide/slide3.jpg">
</div><!-- //sp-thumbnails -->
</div><!-- //slider-sp -->

例によってWordPressの場合は、以下のようになります。

footer.php
<div class="slider-pro" id="slider-sp">
<div class="sp-slides">
<div class="sp-slide"><img src="<?php echo get_template_directory_uri(); ?>/images/slide/slide1.jpg"></div>
<div class="sp-slide"><img src="<?php echo get_template_directory_uri(); ?>/images/slide/slide2.jpg"></div>
<div class="sp-slide"><img src="<?php echo get_template_directory_uri(); ?>/images/slide/slide3.jpg"></div>
</div><!-- //sp-slides -->
<div class="sp-thumbnails">
<img class="sp-thumbnail" src="<?php echo get_template_directory_uri(); ?>/images/slide/slide1.jpg">
<img class="sp-thumbnail" src="<?php echo get_template_directory_uri(); ?>/images/slide/slide2.jpg">
<img class="sp-thumbnail" src="<?php echo get_template_directory_uri(); ?>/images/slide/slide3.jpg">
</div><!-- //sp-thumbnails -->
</div>

今回私が実装した際は、Slider Proを呼び出す時にサムネイルのサイズなども指定しました。

<script>
$(document).ready(function(){
$( '#slider-sp' ).sliderPro({
width: 960,
height: 382,
buttons: false,
arrows: true,
thumbnailWidth: 156,
thumbnailHeight: 85,
thumbnailArrows: true,
thumbnailPointer: true
});
});
</script>

これでスライド画像のサイズが960*382、サムネイル画像のサイズが156*85になります。

キャプション付きスライダー

スライドにキャプションをつけるには、スライド画像の部分を以下のように記述します。

<div class="sp-slide">
<img class="sp-image" src="images/slide/slide1.jpg">
<h3 class="sp-layer sp-black"
data-position="bottomLeft" data-horizontal="10%"
data-show-transition="left" data-show-delay="300" data-hide-transition="right">
Lorem ipsum dolor sit amet
</h3>
<p class="sp-layer sp-white sp-padding"
data-width="200" data-horizontal="center" data-vertical="40%"
data-show-transition="down" data-hide-transition="up">
consectetur adipisicing elit
</p>
<div class="sp-layer sp-static">Static content</div>
</div>

キャプションに付与するクラスには、以下のような効果があります。

sp-layer キャプションに付与する基本クラス
sp-black キャプションの背景色が黒になります。
sp-white キャプションの背景色が白になります。
sp-padding キャプションにpaddingをつけます。
sp-static アニメーションしなくなります。

キャプションにつける属性については、以下のようなものがあります。

data-position キャプションの位置(‘topCenter’ ‘topRight’ ‘bottomLeft’ ‘bottomCenter’ ‘bottomRight’ ‘centerLeft’ ‘centerRight’ ‘centerCenter’)
data-width キャプションの横幅
data-height キャプションの高さ
data-depth キャプションの表示優先度(z-index)
data-horizontal キャプション内の横の位置
data-vertical キャプション内の縦の位置
data-show-duration キャプション表示時のアニメーションされる時間
data-hide-duration キャプション非表示時のアニメーションされる時間
data-show-transition キャプションが表示される時のアニメーションの方向
data-hide-transition キャプションが非表示になる時のアニメーションの方向
data-show-delay キャプションを表示する時のアニメーション開始までの時間
data-hide-delay キャプションを非表示にする時のアニメーション開始までの時間

キャプションは必ずしもテキストである必要はないため、キャプション機能を利用すれば、スライドの上にリンク付きの画像を重ねたりすることも可能です。うまく使えばかっちょいいスライダーになりますよ。

Slider Proのオプション

Slider Proはオプションが豊富で、非常に細かい制御が可能です。

オプションについては、スターフィールド株式会社さんのブログで詳しく解説されていました。

width //横幅を設定。初期:500 ...数値や%で設定・%の場合は'100%'といったように''をつける
height //高さを設定。設定の方法はwidthと同じ
responsive //レスポンシブか否か 初期:true ...trueかfalseか (幅と高さを指定していてもレスポンシブになります)
aspectRatio //縦横比の設定 初期:-1 ...-1以外に設定すると高さがアスペクト比を維持するための数値となる
imageScaleMode //画像のスケールモード(background-sizeみたいなもの) 初期:'cover' ...'cover', 'contain', 'exact' and 'none'
centerImage //画像を中央表示にするか否か 初期:true
autoHeight //スライダーの高さが要素の高さによって調整されるか否か 初期:false
startSlide //スタート時のスライドを設定 初期:0
shuffle //スライドをシャッフルするか否か 初期:false
orientation //スライダーの向きを縦か横か 初期:'horizontal' ...'vertical'
forceSize //スライダーの幅を全幅もしくは、ブラウザ幅に強制することができる 初期:'none' ... 'fullWidth', 'fullHeight' and 'none'
loop //ループさせるか否か 初期:true
slideDistance //スライド間の距離(px) 初期:10
slideAnimationDuration //スライドのアニメーションの時間 初期:700
heightAnimationDuration //高さのアニメーションの時間 初期:700
visibleSize //表示しているスライドの前後のスライドを表示し見えるようにする 初期:'auto' ...%で指定
breakpoints //ブレークポイントの設定 初期:null
fade //フェードを使用するか否か 初期:'false'
fadeOutPreviousSlide //前のスライドがフェードアウトされた時に次のスライドがフェードインする 初期:true
fadeDuration //フェードアニメーションの時間 初期:500
autoplay //自動再生するか否か 初期:true
autoplayDelay //自動再生の遅延/間隔の設定(ミリ秒) 初期:5000
autoplayDirection //自動再生が次のスライド,前のスライドのどちらに進むか設定 初期:'normal' ...'backwards'
autoplayOnHover //スライドにホバーした際のスライダーの設定(一時停止、ストップ,なし) 初期:'pause' ... 'stop','none'
arrows //矢印ボタンの表示 初期:false
fadeArrows //ホバー時に矢印ボタンを表示 初期:true
buttons //スライドのページャの表示 初期:true
keyboard //キーボードでスライドを動かせるようにする 初期:true
keyboardOnlyOnFocus //スライダーにフォーカスがあるときのみ、キーボード入力に応答するか否かの設定 初期:false
touchSwipe //タッチスワイプをするか否か 初期:true
touchSwipeThreshold //タッチスワイプによるスライドが動く最低限の値を設定 初期:50
fadeCaption //キャプションをフェードさせるか否か 初期:true
captionFadeDuration //キャプションのフェードアニメーション時間の設定 初期:500
fullScreen //フルスクリーンボタンの設定 初期:false
fadeFullScreen //ボタンをホバー時に表示されるか否か 初期:true
waitForLayers //レイヤーが消えた後に次のスライドへ行くかどうか 初期:false
autoScaleLayers //レイヤーが自動的にスケールするか否か 初期:true
autoScaleReference //レイヤーを縮小する必要がどのくらいかを決定するために、現在のスライド幅と比較される基準幅を設定する。 初期:-1
smallSize //スライドのサイズがこのサイズ未満の場合、スモール版の画像を使用 初期:480
mediumSize //スライドのサイズがこのサイズ未満の場合、ミディアム版の画像を使用 初期:768
largeSize //スライドのサイズがこのサイズ未満の場合、ラージ版の画像を使用 初期:1024
updateHash //新しいスライドが選択されたときにハッシュが更新されるか否か 初期:false
reachVideoAction //映像の要素があるスライドが選択された時に映像のアクションを設定 初期:'none' ... 'playVideo' and 'none'
leaveVideoAction //映像の要素があるスライドから移動するに映像のアクションを設定 初期:'pauseVideo' ... 'stopVideo', 'pauseVideo', 'removeVideo' and 'none'
playVideoAction //映像の再生開始時にスライダーのアクションを設定 初期:'stopAutoplay' ... 'stopAutoplay' and 'none'
pauseVideoAction //映像が一時停止されたときのスライダーのアクションを設定 初期:'none' ... 'startAutoplay' and 'none'
endVideoAction //映像が終了したときのスライダーのアクションを設定 初期:'none' ... 'startAutoplay', 'nextSlide', 'replayVideo' and 'none'
thumbnailWidth //サムネイルの幅の設定 初期:100
thumbnailHeight //サムネイルの高さの設定 初期:80
thumbnailsPosition //サムネイルの位置の設定 初期:'bottom' ... 'top', 'bottom', 'right' and 'left'
thumbnailPointer //ポインタが選択されたサムネイルの表示 初期:false
thumbnailArrows //サムネイルの矢印が有効になるか否か 初期:false
fadeThumbnailArrows //サムネイルの矢印がフェードインするか否か 初期:true
thumbnailTouchSwipe //サムネイルのタッチスワイプを有効にするか否か 初期:true

豊富すぎて逆に困っちゃいますねw

あとがき

非常にこだわったスライダーが実装可能ですね。

英語ですが、細かい仕様がGitHubの配布ページで解説されていますので、こちらも併せてご参照ください。

この記事が気に入ったら
いいね!してね♪

Twitter で
スポンサードリンク

関連記事

コメントを残す

メールアドレスが公開されることはありません。