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;
}