【发布时间】:2023-01-01 00:25:34
【问题描述】:
当我单击汉堡包菜单按钮时,我希望.menu-btn.menu-mob菜单按钮和导航菜单都必须 is-active类和.sqr在其他两个处于活动状态时拥有类.hidden。这就是为什么我使用 toggle() 来切换所有这些类,但由于某种原因它不起作用。
请注意,我正在使用 react 和 tailwind 以及一些 vanilla css
const showNav = () => {
const menuBtn = document.querySelector('.menu-btn')
const navbar = document.querySelector('.menumob')
const sqr = document.querySelector('.sqr')
menuBtn.addEventListener('click', () => {
menuBtn.classList.toggle('is-active')
navbar.classList.toggle('is-active')
sqr.classList.toggle('hidden')
})
<button class="menu-btn hamburger absolute top-0 right-0 md:hidden" onClick={showNav()}>
<div class="bar"></div>
</button>
.hamburger.is-active::before {
transform: rotate(-45deg) translate(-8px, 6px);
}
.hamburger.is-active::after {
transform: rotate(45deg) translate(-9px, -8px);
}
.hamburger.is-active .bar {
opacity: 0;
}
.menumob {
position: relative;
top:0;
left:100%;
transition: 0.4s;
}
.menumob.is-active {
left:0;
}
【问题讨论】:
-
如果你点击汉堡菜单两次,它会起作用吗?
标签: javascript css reactjs tailwind-css