Q.ページ内リンクの場合はハンバーガーメニューが自動で閉じるようにしたい。
ハンバーガーメニューでページ内リンクを設定した場合、同一ページ内だと移動は出来るが、メニューが展開されたままになっているので、ページ内リンクの場合はハンバーガーメニューが自動で閉じるようにしたい。
▼テーマ仕様
ページA→(メニューを展開)親/子メニューのBページ内リンク
→Bページ内のリンク箇所(メニューは閉じている)
ページB→(メニューを展開)親/子メニューのBページ内リンク
→Bページ内のリンク箇所(メニューが開いたまま)
同一ページ内でハンバーガーメニューを用いてページ内リンクで移動すると、メニューが開いたままになります。
A.下記のカスタマイズを検討ください。
編集ファイル:js/jscript.js 94行目に追加(※位置に指定はありませんが、構文上正しい必要があります。)
$("#global_menu li > ul > li > a").on("click", function(){ if($(".menu_button").hasClass("active")) { $(".menu_button").removeClass("active"); $("#header").removeClass("active"); $("#global_menu").hide(); } else { $(".menu_button").addClass("active"); $("#header").addClass("active"); $("#global_menu").show(); }; });
ただし、カスタマイズ後は下記のような仕様になります。
※親メニューの場合はタップしてもそのまま移動(メニューは閉じない)
※子メニューはタップすると毎回メニューを閉じる(同一ページ内リンクか他ページへのリンクかは関係ない)
▼カスタマイズ後の仕様
ページA→(メニューを展開)親/子メニューのBページ内リンク
→Bページ内のリンク箇所(メニューは閉じている)※仕様のまま
ページB→(メニューを展開)親メニューのBページ内リンク
→Bページ内のリンク箇所(メニューが開いたまま)
ページB→(メニューを展開)子メニューのBページ内リンク
→Bページ内のリンク箇所(メニューが閉じる)
この記事は役に立ちましたか?
もし参考になりましたら、下のボタンで教えてください。
今後の記事作成の参考とさせて頂きます!