画像クリックのモーダルウィンドウの際にテキストも表示
画像をクリックすると、画像が拡大し同時に後ろの背景が薄暗くなる実装をしました。
モーダルが表示される際にそれぞれの画像のalt部分をテキストとして取得し、画像の下に表示させたいです。
以下、コードになります。
恐らく、
画像クリック→画像alt名取得→テキストとしてmodalクラスの中に作成したpタグで表示
みたいな流れだと思いますが、うまく実装できません。
どなたかお力を貸してください。
コード
html
1 <div class="office-slider"> 2 <ul class="office-slider-wrap"> 3 <li> 4 <a href=""> 5 <img class="slider-img1" src="img/environment/office-img1.jpg" alt="オフィス画像1"> 6 </a> 7 </li> 8 9 <li> 10 <a href=""> 11 <img class="slider-img1" src="img/environment/office-img2.jpg" alt="オフィス画像2"> 12 </a> 13 </li> 14 15 16 <li> 17 <a href=""> 18 <img class="slider-img1" src="img/environment/office-img3.jpg" alt="オフィス画像3"> 19 </a> 20 </li> 21 22 </ul> 23 <div class="modal"><!--モーダル表示部分--> 24 <div class="bigimg"><img src="" alt=""></div> 25 <p class="close-btn">✖</p> 26 </div> 27 </div>
css
1 .office-slider{ 2 padding-right: 40px; 3 padding-left: 40px; 4 .office-slider-wrap{ 5 max-width: 1670px; 6 width: 95%; 7 margin: 0 auto; 8 9 li{ 10 margin-right: 10px; 11 margin-left: 10px; 12 13 .slider-img1{ 14 width: 912px; 15 height: 573px; 16 17 } 18 19 } 20 } 21 22 23 .modal { 24 position: fixed; 25 top: 0; 26 left: 0; 27 width: 100%; 28 height: 100vh; 29 background-color: rgba(0, 0, 0, 0.6); 30 display: none; 31 z-index:10; 32 } 33 34 .bigimg { 35 position: absolute; 36 width: 80%; 37 max-width: 600px; 38 top: 50%; 39 left: 50%; 40 transform: translate(-50%, -50%); 41 -webkit-transform: translate(-50%, -50%); 42 -ms-transform: translate(-50%, -50%); 43 img{ 44 width: 100%; 45 height: 100%; 46 } 47 } 48 49 .close-btn { 50 color: #fff; 51 font-size: 40px; 52 position: absolute; 53 right: 20px; 54 top: 0; 55 } 56 57 58 }
jquery
1$('.office-slider-wrap li a').click(function() { 2 var imgSrc = $(this).children().attr('src'); 3 $('.bigimg').children().attr('src', imgSrc); 4 $('.modal').fadeIn(); 5 6 $('body,html').css('overflow-y', 'hidden'); 7 return false 8 }); 9 10 $('.close-btn').click(function() { 11 $('.modal').fadeOut(); 12 $('body,html').css('overflow-y', 'visible'); 13 return false 14 }); 15
試したこと
回答1件
あなたの回答
tips
プレビュー