前提・実現したいこと
モーダル機能を作っており、モーダルが機能した後に背景をクリックしても閉じるようにしたいのですがうまくできないです。具体的に作っているコードの説明としてはボタンを押してモーダルが機能したら、背景に.modal-overlayクラスを追加して、背景と、閉じるボタンをクリックしたらfadeOutするという仕組みです。
どの部分が間違えているのでしょうか??よろしくお願いいたします。
該当のソースコード
HTML
1 <button class="modal-open">モーダル起動ボタン</button> 2 <div id="modal-content"> 3 <p>「閉じる」か「背景」をクリックするとモーダルウィンドウを終了します。</p> 4 <p><a id="modal-close" class="button-link">閉じる</a></p> 5 </div> 6
css
1 2#modal-content{ 3 display:none; 4 position:absolute; 5 top:50%; 6 left:20%; 7 background-color:white; 8 padding:2rem; 9 z-index:10; 10} 11 12.modal-overlay{ 13 width:100%; 14 height:120%; 15 position:fixed; 16 top:0; 17 left:0; 18 background-color:rgba(0,0,0,0.8); 19 z-index:3; 20} 21
jQuery
1 $(".modal-open").click( 2 function(){ 3 $(this).next().stop().fadeIn(400); 4 $("body").append('<div class="modal-overlay"></div>'); 5 $(".modal-overlay").fadeIn("slow"); 6 } 7 ); 8 9 $( ".modal-overlay,#modal-close").click( function(){ 10 $( "#modal-content,.modal-overlay" ).fadeOut( "slow" , function(){ 11 $('.modal-overlay').remove() ; 12 }) ; 13 } ) ; 14 15
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/24 05:42