よろしくお願いいたします。
表題通りなのですが、複数のモーダルを利用したjsに、slickにてカルーセル表示にすると
モーダルjsの「n番目」の取得ができずに困っています。
以下にコードを記載します。
html
1<!--コンテンツ要素--> 2<div class="slider_style modal_trigger"> 3 <div class="modal_btn">1つ目の要素(画像)</div> 4 <div class="modal_btn">2つ目の要素(画像)</div> 5 <div class="modal_btn">3つ目の要素(画像)</div> 6</div> 7<!--モーダルウィンドウ部分(コンテンツの内容)--> 8<div class="modal_area"> 9 <!--1つ目の要素の内容--> 10 <div class="modal_box"> 11 <div class="modal_bg"></div> 12 <div class="modal_inner"> 13 <div class="modal_block"> 14 1つ目の要素の内容 15 </div> 16 <div class="modal_close">×</div> 17 </div> 18 </div> 19 <!--/1つ目の要素の内容--> 20 <!--2つ目の要素の内容--> 21 <div class="modal_box"> 22 <div class="modal_bg"></div> 23 <div class="modal_inner"> 24 <div class="modal_block"> 25 2つ目の要素の内容 26 </div> 27 <div class="modal_close">×</div> 28 </div> 29 </div> 30 <!--/2つ目の要素の内容--> 31 <!--3つ目の要素の内容--> 32 <div class="modal_box"> 33 <div class="modal_bg"></div> 34 <div class="modal_inner"> 35 <div class="modal_block"> 36 3つ目の要素の内容 37 </div> 38 <div class="modal_close">×</div> 39 </div> 40 </div> 41 <!--/3つ目の要素の内容--> 42</div>
js
1$(function() { 2 // モーダルのボタンをクリックした時 3 $('.modal_trigger .modal_btn').on('click', function() { 4 var btnIndex = $(this).index(); // 何番目のモーダルボタンかを取得 5 $('.modal_area .modal_box').eq(btnIndex).fadeIn(); // クリックしたモーダルボタンと同じ番目のモーダルを表示する 6}); 7 8// ×やモーダルの背景をクリックした時 9$('.modal_close , .modal_bg').click(function() { 10 $('.modal_box').fadeOut(); // モーダルを非表示にする 11 }); 12}); 13 14// カルーセル表示 15$('.slider_style').slick({ 16 infinite: true, //スライドのループ有効化 17 dots: true, //ドットのナビゲーションを表示 18 centerMode: true, //要素を中央寄せ 19 centerPadding: '10%', //両サイドの見えている部分のサイズ 20 autoplay: true, //自動再生 21 slidesToShow: 3, //768px以上のサイズに適用 22 responsive: [{ 23 breakpoint: 768, //767px以下のサイズに適用 24 settings: { 25 slidesToShow: 1 26 } 27 }] 28});
この状態ですと、どの項目をクリックしても、1つ目の要素の内容が表示されてしまいます。
どこを変更すればいいのか、slickを使用する限り無理なのか、ご教授いただけますと幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。