前提・実現したいこと
ハンバーガーメニューのページ内リンクをクリックすると、ハンバーガーメニューが閉じるようにしたいです。
過去の同様の質問を見ながら自分で書いてみたのですが、リンクをクリックしても閉じません。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
html
1<p class="humbergerBtn open"><span class="fas fa-stream fa-2x"></span></p> 2<p class="humbergerBtn close"><span class="fas fa-times fa-3x"></span></p> 3 4<nav class="humberger"> 5 <ul class="humbergerUl"> 6 <li><a href="#about"><i class="fas fa-sm fa-feather-alt"></i> <span>A</span>BOUT</a></li> 7 <li><a href="#news"><i class="fas fa-sm fa-feather-alt"></i> <span>N</span>EWS</a></li> 8 <li><a href="#service"><i class="fas fa-sm fa-feather-alt"></i> <span>S</span>ERVICE</a></li> 9 <li><a href="#contact"><i class="fas fa-sm fa-feather-alt"></i> <span>C</span>ONTACT</a></li> 10 <li><a href="#company"><i class="fas fa-sm fa-feather-alt"></i> <span>C</span>OMPANY</a></li> 11 </ul> 12</nav>
css
1.open, .close { 2 margin-right: 20px; 3 display: none; 4} 5 6.humberger { 7 position: fixed; 8 z-index: 20; 9 top: 100px; 10 transform: translateY(-200%); 11 transition: all 1s; 12 width: 100%; 13 background-color: #FFFFFF; 14} 15 16nav.humberger a { 17 border-bottom: solid 1px #ebebec; 18} 19 20nav.humberger li { 21 height: 50px; 22 line-height: 50px; 23} 24 25nav.humberger li a { 26 display: block; 27 text-align: center; 28} 29 30nav.humberger.active { 31 transform: translateY(0%); 32} 33 34 /* スマホ向けレイアウト */ 35 @media all and (max-width: 800px) { 36 37 header {align-items: center;} 38 .header-menu {display: none;} 39 .open {display: block;} 40 .open.active {display: none;} 41 .close.active {display: block;} 42 43 44} 45
javascript
1 $(function() { 2 $('.humbergerBtn').click(function() { 3 $(this).toggleClass('active'); 4 if ($(this).hasClass('active')) { 5 $('.humberger').addClass('active'); 6 $('body').addClass('overflowHidden'); 7 $('.open').addClass('active'); 8 $('.close').addClass('active'); 9 } else { 10 $('.humberger').removeClass('active'); 11 $('.open').removeClass('active'); 12 $('.close').removeClass('active'); 13 $('body').removeClass('overflowHidden'); 14 } 15 }); 16 17 $('.humberger a').click(function() { 18 $('.humbergerBtn').trigger('click'); 19 }); 20 21 22 }); 23
試したこと
ソースに記載しているように、過去の同様の質問を見ながら、下記を追記してみましたが、何も変わりませんでした・・・。
$('.humberger a').click(function() {
$('.humbergerBtn').trigger('click');
});
探り探りで作っている状況で、勉強不足でお恥ずかしいですが、どこがおかしいのかご教授いただけるとありがたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/28 02:51