webサイトのメインビジュアルやバナーの箇所で使われる便利なプラグインを紹介します。
プラグインのダウンロードはこちらから
jQuery content slider carousel image slideshow | bxSlider
こちらのいいところはカルーセルスライダーになったり、コンテンツスライダーになったり、どちらでも使用できる所です。
まずはDEMOをご覧下さい
基本的な使い方としては、
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script type='text/javascript' src='js/jquery.bxSlider.js'></script>
を読み込み、head部分の箇所に
<script type="text/javascript"> $(document).ready(function(){ $('#slider').bxSlider(); }); </script>
でOKです。
後ほどでてきますが、イージング効果を使用したい場合、
さらに、
<script type='text/javascript' src='js/jquery.easing.1.3.js'></script>
を読み込む必要があります。
基本的なHTMLは、
<ul id="slider1"> <li>Slide one content</li> <li>Slide two content</li> <li>Slide three content</li> <li>And so on...</li> </ul>
だけです。
div要素でも可能なので、
コンテンツ毎動かすことができます。
DEMOの説明をさせていただきます。
1.ページャー、戻る・次へボタン付き
まず、head部分、
Javascript
<script type="text/javascript"> $(document).ready(function(){ $('#slider').bxSlider({ auto: true, //自動再生 pause: 5000, //静止時間 speed: 1000, //エフェクトのスピード mode: 'horizontal', //エフェクトの種類 pager:true, //ページャーの有無 prevText: '<', //前へのテキスト nextText: '>' //次へのテキスト }); }); </script>
切り替わりのエフェクトは全部で、横スライド、縦スライド、フェイドの3パターンしかありません。
しかし、次のイージング効果を使用すればかなりのパターンになります。
2.サムネイルのページャー付き,イージング効果
イージング効果については、
http://gsgd.co.uk/sandbox/jquery/easing/
で動きが見れます。
Javascript
<script type="text/javascript"> $(function(){ // assign the slider to a variable var slider = $('#slider2').bxSlider({ auto: true, pause: 5000, speed: 1000, mode: 'horizontal', prevText: '<', nextText: '>', pager: true, easing: 'easeOutBounce', //イージングの効果 //サムネイルの設定 buildPager: function(slideIndex){ switch (slideIndex){ case 0: return '<a href="" class="thumb"><img src="sample1.jpg" width="90" /></a>'; case 1: return '<a href="" class="thumb"><img src="sample2.jpg" width="90" /></a>'; case 2: return '<a href="" class="thumb"><img src="sample3.jpg" width="90" /></a>'; case 3: return '<a href="" class="thumb"><img src="sample4.jpg" width="90" /></a>'; } } }); }); </script>
3.カルーセルスライダー
Javascript
<script type="text/javascript"> $(document).ready(function(){ $('#slider3').bxSlider({ auto: true, pause: 5000, speed: 1000, pager: true, displaySlideQty: 3, //一画面に表示する数 moveSlideQty: 1, //移動時にずれる数 prevText: '<', nextText: '>' }); }); </script>
ここで気をつけたいのは、
カルーセルの横幅が、
displaySlideQtyで設定した数値×liの要素のwidthを設定した数値
になることです。
デモでは、liの要素のwidthを320pxに設定しているので、
960pxになっています。
ですのでカルーセルの場合、CSSで調整が必要になってきそうです。
さらに言うと、下にでてくるページ数はliの数になります。
HTML
<h3>1.ページャー、戻る・次へボタン付き</h3> <div class="bg_img"><ul id="slider" class="slider"> <li class="slide1"><a href="">横浜の赤レンガ倉庫</a></li> <li class="slide2"><a href="">Title , Link , or Desciption</a></li> <li class="slide3"><a href="">Title , Link , or Desciption</a></li> <li class="slide4"><a href="">Title , Link , or Desciption</a></li> </ul></div> <h3>2.サムネイルのページャー付き,イージング効果</h3> <div class="bg_img"><ul id="slider2" class="slider"> <li class="slide1"></li> <li class="slide2"></li> <li class="slide3"></li> <li class="slide4"></li> </ul></div> <h3>3.カルーセルスライダー</h3> <div class="bg_img3"><ul id="slider3" class="slider"> <li class="slide1"><a href="" class="thumb"><img src="sample1.jpg" width="160" /></a></li> <li class="slide2"><a href="" class="thumb"><img src="sample2.jpg" width="160" /></a></li> <li class="slide3"><a href="" class="thumb"><img src="sample3.jpg" width="160" /></a></li> <li class="slide4"><a href="" class="thumb"><img src="sample4.jpg" width="160" /></a></li> </ul></div>
css
.bg_img { width: 100%; max-width: 960px; margin: 0 auto 150px; } .bg_img .bx-wrapper { height: 100%; } .bx-window { margin-bottom: 10px; } #slider li a { padding: 30px 0 0 40px; font-size: 24px; display: block; color: #ffffff; text-decoration: none; text-shadow: 1px 1px 2px #333333; } .slider { width: 100%; margin: 0px auto; } /* 1.2のスライダー部分 */ .bg_img .slider li { width: 100%; background-repeat: no-repeat; background-position: left center; height: 300px; } .bg_img .slider li.slide1 { background-image: url(../sample1.jpg); } .bg_img .slider li.slide2 { background-image: url(../sample2.jpg); } .bg_img .slider li.slide3 { background-image: url(../sample3.jpg); } .bg_img .slider li.slide4 { background-image: url(../sample4.jpg); } /* ページャー部分 */ .bx-pager { text-align: center; } .bx-pager a { margin-right: 10px; border: 1px solid #dddddd; padding: 3px 5px; color: #333333; text-decoration: none; } .bx-pager a.pager-active { color: #ffffff; background-color: #333; } /* 前へ、次へのボタン */ .bx-prev,.bx-next { position: absolute; font-size: 36px; text-decoration: none !important; color: #ffffff !important; text-shadow: 1px 1px 2px #333333; } .bx-prev { left: 10px; top: 40%; } .bx-next { right: 10px; top: 40%; } .bx-pager a.thumb { border: none; padding:0; background-color: none; line-height: 0; overflow: hidden; display: inline-block; } .bx-pager a img { border: 1px solid #dddddd; padding:0; text-decoration: none; } .bx-pager a.pager-active img { color: #ffffff; border: 1px solid #f00; } /* 3.カルーセルスライダー */ .bg_img3 .bx-wrapper { width: inherit; margin-bottom: 50px; } #slider3 li { width: 320px; text-align: center; }