■困っていること
表題の通り、モーダルウィンドウをウィンドウ範囲外のクリックで閉じるようにしたいのですがやり方がわかりません。
モーダルウィンドウ内に配置した×ボタン押下で閉じるところまではできております。
やり方について検索すると、
モーダルオンオフのボタン(親要素)の中にモーダルウィンドウ(子要素)を含んでいるHTMLの構造を前提とした解決方法が多く、
今回のようにモーダルオンオフのボタンとモーダルウィンドウのHTMLが独立した状態(兄弟関係)での解決方法がわかりませんでした。
HTMLを変更せず、jQueryのみでウィンドウ範囲外のクリックでモーダルを閉じる方法がありましたらご教示いただきたいです。
■ソースコード
html
1<a id="button">モーダルオンオフ</a> 2<div id="modal-window"> 3 <button id="close-icon">×</button> 4</div>
jQuery
1// モーダルオンオフのボタンが押されたら 2$('#button').on('click', function () { 3 // モーダルウィンドウを開く 4 $('#modal-window').toggleClass("visible"); 5 6 // ×ボタンが押されたらモーダルウィンドウを閉じる 7 $('#close-icon').off('click').on('click', function () { 8 $('#modal-window').removeClass('visible'); 9 }); 10});
回答1件
あなたの回答
tips
プレビュー