滑动关闭汉堡菜单

时间:2021-02-25 08:46:30

标签: javascript html css hamburger-menu

所以我真的不太了解 javascript,我的项目截止日期即将到来,我已经通过点击打开了它,但是当你滑动它时我需要它关闭。所以如果有人知道,请告诉我该怎么做,不要开始解释,因为我没有时间,我的时间真的很紧

    function navSlide() {
        const burger = document.querySelector(".burger-icon ul");
        const nav = document.querySelector(".menu-div");
    
    
        burger.addEventListener("click",() => {
            //Toggle Nav
            nav.classList.toggle("nav-active");
    
    
            //Burger Animation
            burger.classList.toggle("toggle");
        });
    
    }
    
    navSlide();
    .menu-div{
        position:absolute;
        left:0px;
        width:287px;
        top:0px;
        background-color:var(--headercolor);
        height:812px;
        font-size:11px;
        font-weight: bold;
        transform:translateX(-100%);
        transition:transform 0.5s ease-in;

    .nav-active{
    transform: translateX(0%);
}
            <div class="burger-icon">
               <ul> 
                    <li class="bar1"></li>
                    <li class="bar2"></li>
                    <li class="bar3"></li>
                </ul>
            </div>
              
        <h5 class="logo">LOGO</h5>
        <div class="user-photo">
            <img src="static\img\christopher-campbell-28567-unsplash.png" alt="">
        </div>
        <div class="menu-div">
            <nav>
                <h5 class="burger-logo">LOGO</h5>
                <ul class="nav-links">
                    <li><img src="static\img\home.png" alt="">HOME</li>
                    <li><img src="static\img\discover.png" alt=""></i>DISCOVERY</li>
                    <li><img src="static\img\photos.png" alt="">PHOTOS</li>
                    <li><img src="static\img\mail.png" alt="">CONTACT</li>
                    <li><img src="static\img\christopher-campbell-28567-unsplash.png" alt="">PROFILE</li>
                </ul>
            </nav> 

1 个答案:

答案 0 :(得分:0)

您需要使用 jQueryUI swipe 事件(或任何其他为您简化的库)

然后

$(window).on('click swipe', '.burger-icon ul', function () {
    $(this).toggleClass("nav-active toggle");
});

This 是普通的 JS 滑动事件