###前提・実現したいこと
進む、戻るボタンで画像がフェードイン、フェードアウトするスライダーを実現したいのですが、このスライダーを一つ設置した場合は上手くいきました。しかし二つ設置した場合、同じクラス名を使っているため連動してしまっています。これを個別で動かしたいです。
###試したこと
前回質問したスライドショーを複数設置を参考にしてthisを使って階層を辿ってslideを取得しようとしてみたのですが、書き方が間違っているためか上手く行きませんでした。
ご回答よろしくお願いします。
###該当のソースコード
https://jsfiddle.net/8z00nysd/2/
javascript
1$(function(){ 2 3 var img = $('.slide').children('img'); 4 var num = img.length; 5 var count = 0; 6 img.eq(0).addClass('show'); 7 8 $('.slide__next').click(function(){ 9 img.eq(count).removeClass('show'); 10 11 if(count>=num-1) { 12 count = 0; 13 } else { 14 count ++; 15 } 16 17 img.eq(count).addClass('show'); 18 }); 19 20 $('.slide__prev').click(function(){ 21 img.eq(count).removeClass('show'); 22 23 if(count<=0) { 24 count = num-1; 25 } else { 26 count --; 27 } 28 29 img.eq(count).addClass('show'); 30 }); 31 32});
html
1 <div class="wrapper"> 2 3 <div class="slideWrapper"> 4 <ul class="slide"> 5 <img src="https://placehold.jp/f44242/f44242/150x150.png"> 6 <img src="https://placehold.jp/f4d041/f4d041/150x150.png"> 7 <img src="https://placehold.jp/23e05c/23e05c/150x150.png"> 8 <img src="https://placehold.jp/2fd2ef/2fd2ef/150x150.png"> 9 </ul> 10 <p class="slide__prev"> 11 戻る 12 </p> 13 <p class="slide__next"> 14 進む 15 </p> 16 </div> 17 18 <div class="slideWrapper"> 19 <ul class="slide"> 20 <img src="https://placehold.jp/f44242/f44242/150x150.png"> 21 <img src="https://placehold.jp/f4d041/f4d041/150x150.png"> 22 <img src="https://placehold.jp/23e05c/23e05c/150x150.png"> 23 <img src="https://placehold.jp/2fd2ef/2fd2ef/150x150.png"> 24 </ul> 25 <p class="slide__prev"> 26 戻る 27 </p> 28 <p class="slide__next"> 29 進む 30 </p> 31 </div> 32 33 </div>
css
1*{ 2 margin: 0; 3 padding: 0; 4} 5 6img{ 7 vertical-align: bottom; 8} 9 10ul{ 11 list-style: none; 12} 13 14.wrapper{ 15 width: 300px; 16} 17 18.slideWrapper{ 19 width: 150px; 20 float: left; 21} 22 23.slide{ 24 min-height: 150px; 25 position: relative; 26} 27 28.slide img{ 29 position: absolute; 30 top: 0; 31 left: 0; 32 opacity: 0; 33 z-index: 0; 34 transition: 0.7s; 35} 36 37.slide .show{ 38 opacity: 1; 39 z-index: 1; 40} 41 42.slide__prev, 43.slide__next{ 44 cursor: pointer; 45 padding: 10px; 46 font-size: 12px; 47} 48 49.slide__prev{ 50 float: left; 51 margin-left: 5px; 52} 53 54.slide__next{ 55 float: right; 56 margin-right: 5px; 57}
###補足情報(言語/FW/ツール等のバージョンなど)
jQueryはjquery-2.2.4.minです。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/01 05:28
2017/03/01 05:29
2017/03/01 05:38
2017/03/01 05:49
2017/03/01 05:59
2017/03/01 06:03
2017/03/01 06:19