前提・実現したいこと
bxsliderで各サムネイル画像にもJavaScriptでリンクを貼りたい
発生している問題
下記jsコード内
'<a data-slide-index="' + i + '" href="#">のhrefの#にurlを追加すると全てのサムネイルのリンクが同じになってしまうが、それを個別に分解する方法が検索しても見つからない。
該当のソースコード
HTML
1<ul id="bxslider01"> 2 <li><a href="#"><img src="img/img01.jpg" /></a></li> 3 <li><a href="#"><img src="img/img02.jpg" /></a></li> 4 <li><a href="#"><img src="img/img03.jpg" /></a></li> 5 <li><a href="#"><img src="img/img04.jpg" /></a></li> 6 <li><a href="#"><img src="img/img05.jpg" /></a></li> 7</ul> 8<div class="custom-thumb"></div>
JavaScript
1$(function() { 2 // サムネイルのサイズ 3 var thumbWidth = 150; 4 var thumbHeight = 150; 5 6 // サムネイルの作成 7 var insert = ''; 8 for (var i = 0; i < $('#sample li').length; i++) { 9 insert += '<a data-slide-index="' + i + '" href="#"><img src="' + $('#sample li').eq(i).children('img').attr('src') + '" width="' + thumbWidth + '" height="' + thumbHeight + '" /></a>'; 10 }; 11 $('.custom-thumb').append(insert); 12 13 $('#sample').bxSlider({ 14 pagerCustom: '.custom-thumb', 15 }); 16});
試したこと
jsで各画像毎に異なるクラス名を付けてhrefを書き換えようとしたが、調べても方法が見つからなかった。
補足情報(FW/ツールのバージョンなど)
元々、JavaScriptでサムネイルが追加されていたため、その部分をコメントアウトしてHTMLで記述するとスライダーの画像や動きに不具合が見られたため、JavaScriptで出来ればと考えています。
スライダーイメージ
このようなメイン画像の下に横並びのサムネイルがあり、その各サムネイル画像にもリンクを貼りつけたいです。
回答1件
あなたの回答
tips
プレビュー