前提・実現したいこと
jqueryで調べたソースコードをコピペしてきたのですが
ハンバーガーメニューのリンクをクリックして、ページ内リンクしたあとスクロールで上まで戻るとメニューが出たままになってしまっています。
クリックしたら閉じるようにするにはどこにどう記述すればいいんでしょうか。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
html
1<div id="target"> 2 <div class="target_inner"> 3 <span class="target_inner_line target_inner_1" id="line1"></span> 4 <span class="target_inner_line target_inner_2" id="line2"></span> 5 <span class="target_inner_line target_inner_3" id="line3"></span> 6 </div> 7<nav class="nav" id="nav_f"> 8 <ul> 9 <li><a href="#header">HOME</a></li> 10 <li><a href="#drink">DRINK</a></li> 11 <li><a href="#food">FOOD</a></li> 12 <li><a href="#access">ACCESS</a></li> 13 <li><a href="#contact">CONTACT</a></li> 14 </ul></nav> 15</div>
css
1.target_inner{ 2 width: 40px; 3 height: 30px; 4 position: relative; 5 z-index: 2; 6 7} 8 9.target_inner_line { 10 display: block; 11 width: 40px; 12 height: 5px; 13 background: #fff; 14 -webkit-transition: 1.5s; 15 transition: 1.5s; 16 border-radius: 50px; 17 position: absolute; 18} 19 20.target_inner_1 { 21 top: 0; 22} 23 24.target_inner_2 { 25 top: 13px; 26} 27 28.target_inner_3 { 29 top: 26px; 30} 31 32 33.fadein{ 34 -webkit-transform: translateX(100%); 35 transform: translateX(100%); 36} 37 38.linea,.lineb,.linec{ 39 background: #ffffff; 40} 41 42.linea { 43 -webkit-transform: rotate(225deg); 44 transform: rotate(225deg); 45 top: 13px; 46} 47 48.lineb { 49 opacity: 0; 50} 51 52.linec { 53 -webkit-transform: rotate(-225deg); 54 transform: rotate(-225deg); 55 top: 13px; 56}
jquery
1function hamburger() { 2 document.getElementById('line1').classList.toggle('linea'); 3 document.getElementById('line2').classList.toggle('lineb'); 4 document.getElementById('line3').classList.toggle('linec'); 5 document.getElementById('target').classList.toggle('slidex'); 6 document.getElementById('nav_f').classList.toggle('fadein'); 7} 8 9document.getElementById('target').addEventListener('click', function () { 10 hamburger(); 11}); 12let list = document.getElementsByClassName('list'); 13 14for (let i = 0; i < list.length; i++) { 15 list[i].addEventListener('click', function () { 16 hamburger(); 17 }); 18} 19 </script> 20 <script type="text/javascript"> 21$(function(){ 22 $('a[href^=#]').click(function(){ 23 var speed = 500; 24 var href= $(this).attr("href"); 25 var target = $(href == "#" || href == "" ? 'html' : href); 26 var position = target.offset().top; 27 $("html, body").animate({scrollTop:position}, speed, "swing"); 28 return false; 29 }); 30}); 31</script>
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー