ハンバーガーメニューが開いてくれません
初めてjsに挑戦し、いろいろなエラーはなんとか自力で取り除くことができたのですが、いざハンバーガーメニューをクリックしても開きませんでした。
発生している問題・エラーメッセージ
エラーメッセージ
###html、css、js
<html lang="ja"> <head> <meta charset="utf-8"> <title>Furniture Design</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://unpkg.com/ress/dist/ress.min.css"> <link rel="stylesheet" href="css/style19.css"> <script src="jquery-3.6.0.min.js"></script> <script src="js/main.js"></script> </head> <body> <div class="container"> <header id="header"> <div class="flex"> <h1 class="site-title"> <a href="index19.html"><img src="images/logo.svg" alt=""></a> </h1> <nav id="navi" class="header-list"> <ul class="nav-menu"> <li><a href="#">PRODUCT</a></li> <li><a href="#">ABOUT</a></li> <li><a href="#">COMPANY</a></li> <li><a href="#">CONTACT</a></li> </ul> </nav> <div class="toogle-btn"> <span></span> <span></span> </div> </div> <div id="mask"></div> </header>ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
#header {
width: 100%;
height: 80px;
position: fixed;
left: 0;
top: 0;
padding: 16px 40px 16px 0;
background-color: white;
align-items: center;
z-index: 10;
}
#header .flex {
width: 100%;
display: flex;
justify-content: space-between;
}
#navi {
position: fixed;
top: 0;
left: -700px;
width: 300px;
color: #fff;
padding: 36px 50px;
transition: all .5s;
z-index: 20;
opacity: 0;
}
#navi a {
color: #fff;
}
#navi li {
margin-bottom: 14px;
}
.open #navi {
left: 0;
opacity: 1;
}
.toogle-btn {
width: 30px;
height: 30px;
transition: all .5s;
cursor: pointer;
position: relative;
z-index: 20;
}
.toogle-btn span {
display: block;
width: 30px;
position: absolute;
height: 2px;
background-color: #333;
border-radius: 4px;
transition: all .5s;
}
.toogle-btn span:nth-child(1) {
top: 20px;
}
.toogle-btn span:nth-child(2) {
bottom: 0px;
}
.open .toogle-btn span {
background-color: #fff;
}
.open .toogle-btn span:nth-child(1) {
-webkit-transform: translateY(4px) rotate(-45deg);
transform: translateY(4px) rotate(-45deg);
}
.open .toogle-btn span:nth-child(2) {
-webkit-transform: translateY(-4px) rotate(45deg);
transform: translateY(-4px) rotate(45deg);
}
#mask {
display: none;
transition: all .5s;
}
.open #mask {
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #000;
opacity: .8;
z-index: 10;
cursor: pointer;
}
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
'use strict';
$(function(){
$('.toogel-btn').on('click', function() {
if ($('#header').hasClass('open')) {
$('#header').removeClass('open');
} else {
$('#header').addClass('open');
}
});
$('#mask').on('click', function() {
$('#header').removeClass('open')
});
});
試したこと
ホームページなどに書いてある、リンクの順番や入力ミスなどは探しましたが見つかりません
補足情報(FW/ツールのバージョンなど)
コードの書き方が見づらくて本当に申し訳ないです
回答1件
あなたの回答
tips
プレビュー