スライドで縦に並ぶサムネイルなら簡単なこれで決まり!
縦のサムネイルが右などに並んだスライダーを設置しようと、sliderproで設置したのですが、いろいろなプラグインとバッティングするので、
他にないか探していたら、簡単で、バッティングもしないいいものがありました!
HTML表示部分
↓
<div id="slider_tate"> <ul id="photo"> <li><a href="#"><img src="<?php bloginfo('template_directory');?>/images/toptateslide01.jpg" /></a></li> <li><a href="#"><img src="<?php bloginfo('template_directory');?>/images/toptateslide02.jpg" /></a></li> <li><a href="#"><img src="<?php bloginfo('template_directory');?>/images/toptateslide03.jpg" /></a></li> <li><a href="#"><img src="<?php bloginfo('template_directory');?>/images/toptateslide04.jpg" /></a></li> </ul> <ul id="thum"> <li><img src="<?php bloginfo('template_directory');?>/images/toptateslidemini01.jpg"></li> <li><img src="<?php bloginfo('template_directory');?>/images/toptateslidemini02.jpg"></li> <li><img src="<?php bloginfo('template_directory');?>/images/toptateslidemini03.jpg"></li> <li><img src="<?php bloginfo('template_directory');?>/images/toptateslidemini04.jpg"></li> </ul> </div>
CSS
↓
/* 縦スライダー */ #slider_tate img {vertical-align:bottom;} #slider_tate { width:760px; overflow: hidden; margin-bottom: 30px; } #photo { width:540px; height:380px; float:left; position:relative; } #photo li { position:absolute; } #thum { width:200px; float:right; } #thum li { cursor:pointer; }
js部分 (html内に書いてもいいけど、今回は外部js化して読み込みました。
↓
<?php wp_enqueue_script('simpletatethumslider', get_bloginfo('template_url').'/js/simpletatethumslider.js'); ?><!-- TOPPAGEの縦サムネイルスライダー用 -->
$(function(){ var slidSpd = 300; //フェードの速度 var slidTimer = 4000; //スライドの間隔 var count = 0; //count番目の画像が表示される(0から数える) //画像の枚数を調べて<li>にidを付加 var qua = $("#photo li").length; for(i=0; i<qua; i++) { //メイン画像のリストにidを付与 $("#photo li:eq("+i+")").attr("id", "list"+ i); //サムネイル画像のリストにidを付与 $("#thum li:eq("+i+")").attr("id", "btn"+ i); } //画像をフェードさせる関数 function photoFade() { //countと同じ番号のidが振られた<li>を一番後ろ(重なりの一番上にくる)へ移動させる $("#photo li#list"+count).appendTo('#photo'); //移動させた<li>の透明度を0に $('#photo li:last').css({ opacity:'0'}) //透明度を0→100へアニメーションさせ、フェードで出現するように見せる $('#photo li:last').stop(true, false).animate({ opacity:'1' }, slidSpd ); //全てのサムネイル画像の透明度を1に $("#thum li").css({ opacity:'0.6'}) //countと同じ番号のidが振られたサムネイルのみ半透明にアニメーションさせる $("#thum #btn"+count).stop(true, false).animate({ opacity:'1' }, slidSpd ); } //カウントを1増やす関数 function countUp(){ //countが画像枚数より大きくなれば0へ戻し、それ以外なら1増やす if(count>=qua-1) { count = 0; } else { count ++; } } //slidTimer秒毎に繰り返し処理をさせる関数 var timerID; function timerStart(){ clearInterval(timerID); timerID = setInterval(function(){ countUp(); photoFade(); }, slidTimer); }; //サムネイルを押した時の処理 $("#thum li").click(function(){ var index = $("#thum li").index(this); count = index; photoFade(); timerStart(); }); //スライドスタート photoFade(); timerStart(); });
参考サイト
関連記事はこちら!
スポンサーリンク