Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9004

【jQuery】領域外のクリック時にメニューを閉じるようにする

$
0
0

jQueryでスマホ用メニューをクリックした際にメニュー以外の領域をクリックした際にメニューを閉じるようにしたい。

このサイトで✕ボタンでしかメニューが閉じないのは不便。
Image from Gyazo

メニュー以外をクリックした際にこんな感じで閉じたい。
Image from Gyazo

実装

今回のサイトはWordPressで作っていたため、テーマにのっとってコードを追記する必要があります。

そこで、devモードでコードを見ると、ハンバーガーメニューをクリックするとmenu-toggleクラスにactiveクラスが付与されるようにしていて、activeクラスがある場合はメニューがひらっきぱなしになるように組まれていました。

//メニューが閉じてるとき
<divclass="menu-toggle">

//メニューを開いてるとき
<divclass="menu-toggle active">

というわけで、メニュー外をクリックしたら、menu-toggleの部分からactiveを取り除くコードを記載すればOKです。

jQuery(document).ready(function($){varnav=$('.menu-toggle');$('.main-section').click(function(){//ここでnavの部分がactiveクラスを持っているか確認if(nav.hasClass('active')){$('.menu-toggle').removeClass('active');}});});

jQuery(document).ready(function($)としているのは、サイトのHTMLを完全に読み込んでからこのjQueryを実行させたいからです。


Viewing all articles
Browse latest Browse all 9004

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>