ナビゲーションリストを使用してスライドショーの画像を切り替えるjqueryスライドショーがあります。どのように機能するかは、強調表示されているナビゲーション リスト (「.active」) にカーソルを合わせると、関連する画像がそれに切り替わります。ナビゲーション リスト内にリンクがあり、クリックして別のページに移動することもできます。
人がナビゲーションリストをタップするとアクティブになり、画像のスライドショーが切り替わり、もう一度タップするとそのリンクにたどり着くように、タブレットでこれが機能する必要があります。現在起こっていることは、タップするとすぐにアクティブになり、クリックスルーするということです。
jqueryはこちら
$(".main_image .desc").show(); //Show Banner
$(".main_image .block").animate({ opacity: 0.8 }, 1 ); //Set Opacity
//Click and Hover events for thumbnail list
$(".image_thumb ul li:first").addClass('active');
$(".image_thumb ul li").hover(function(e){
//Set Variables
e.preventDefault();
var imgAlt = $(this).find('img').attr("alt"); //Get Alt Tag of Image
var imgTitle = $(this).find('a.imgloc').attr("href"); //Get Main Image URL
var imgDesc = $(this).find('.block').html(); //Get HTML of block
var imgDescHeight = $(".main_image").find('.block').height(); //Calculate height of block
if ($(this).is(".active")) { //If it's already active, then...
return false; // Don't click through
} else {
//Animate the Teaser
$(".main_image .block").animate({ opacity: 0, marginBottom: -imgDescHeight }, 250, function() {
$(".main_image .block").html(imgDesc).animate({ opacity: 0.8, marginBottom: "0" }, 250 );
$(".main_image img").attr({ src: imgTitle , alt: imgAlt});
});
}
$(".image_thumb ul li").removeClass('active'); //Remove class of 'active' on all lists
$(this).addClass('active'); //add class of 'active' on this list only
return false;
});
そして、これがナビゲーションリストのhtmlです
<div class="image_thumb">
<ul>
<li id="one">
<h2><a href="styleguide.html">Text Text Text</a></h2>
<p><a href="styleguide.html">Text Text Text</a></p>
<a class="imgloc" href="content/images/home/01.jpg"></a>
<div class="block">
<p>Text Text Text</p>
</div>
</li>
</ul>
</div>
これがどのように機能するかの例です: ocgoodwill.org
誰かがそれを助けることができれば、それは素晴らしいことです!
- 編集 -
また、ユーザーが要素の 1 つをタップしてから別の要素をタップした場合、最初の要素をリセットして、もう一度タップしたときに自動的にクリックスルーされないようにする必要があることも付け加えておきます。