单击链接后隐藏菜单 - HTML/JS
Hidden menu after click on links - HTML/JS
我试图在点击 link 后制作一个隐藏的响应式菜单。当我点击第一个 link 时,它正在工作,但是当我点击另一个 link 菜单时,它并没有消失。我也试过 nava = document.querySelectorAll('.nav_links a');但是即使在点击第一个 link.
之后菜单也没有关闭
const navSlide = () => {
const burger = document.querySelector('.nav_links_menu');
const nav = document.querySelector('.nav_links');
const nava = document.querySelector('.nav_links a');
burger.addEventListener('click', () => {
nav.classList.toggle('nav_active');
//Burger Animation
burger.classList.toggle('toggle');
})
nava.addEventListener('click', () => {
nav.classList.toggle('nav_active');
burger.classList.toggle('toggle');
})
}
您必须绑定所有标签。你已经试过了:
nava = document.querySelectorAll('.nav_links a'
.
然后你迭代了这个集合的每个元素并像这样添加事件监听器:
const navSlide = () => {
const burger = document.querySelector('.nav_links_menu');
const nav = document.querySelector('.nav_links');
const nava = document.querySelectorAll('.nav_links a');
nava.forEach(n => {
n.addEventListener('click', (e) => {
e.preventDefault();
nav.classList.toggle('nav_active');
burger.classList.toggle('toggle');
})
})
}
navSlide();
.nav_active {
background: green;
}
<div class="nav_links_menu">
<div class="nav_links">
<a href="nav_active">1</a>
<a href="">2</a>
<a href="">3</a>
</div>
</div>
我试图在点击 link 后制作一个隐藏的响应式菜单。当我点击第一个 link 时,它正在工作,但是当我点击另一个 link 菜单时,它并没有消失。我也试过 nava = document.querySelectorAll('.nav_links a');但是即使在点击第一个 link.
之后菜单也没有关闭const navSlide = () => {
const burger = document.querySelector('.nav_links_menu');
const nav = document.querySelector('.nav_links');
const nava = document.querySelector('.nav_links a');
burger.addEventListener('click', () => {
nav.classList.toggle('nav_active');
//Burger Animation
burger.classList.toggle('toggle');
})
nava.addEventListener('click', () => {
nav.classList.toggle('nav_active');
burger.classList.toggle('toggle');
})
}
您必须绑定所有标签。你已经试过了:
nava = document.querySelectorAll('.nav_links a'
.
然后你迭代了这个集合的每个元素并像这样添加事件监听器:
const navSlide = () => {
const burger = document.querySelector('.nav_links_menu');
const nav = document.querySelector('.nav_links');
const nava = document.querySelectorAll('.nav_links a');
nava.forEach(n => {
n.addEventListener('click', (e) => {
e.preventDefault();
nav.classList.toggle('nav_active');
burger.classList.toggle('toggle');
})
})
}
navSlide();
.nav_active {
background: green;
}
<div class="nav_links_menu">
<div class="nav_links">
<a href="nav_active">1</a>
<a href="">2</a>
<a href="">3</a>
</div>
</div>