jquery - 当我不在 css active 类中保存时弹出菜单关闭

标签 jquery html css navigationbar

我做了一个可折叠的菜单,我用 jQuery 调用我的事件代码。但是,它只在我按住鼠标时出现,在我不按住时消失。

CSS

#menu{position: fixed;
    width: 400px;
    height: 100%;
    top: 0;
    left:-400px;
    background: linear-gradient(#1a0000, #800000);
}
#menu:active{
    left:0;
}

jQuery:

$(document).ready(function(){
        $('.icon').click(function(){
            $('.icon').toggleClass('active');
            $('.menu').toggleClass('active');
        })
    })

最佳答案

为此你不需要 jquery。

只需使用复选框 hack。

HTML

<div class="button">
  <input type="checkbox" id="open">
  <label for="open">click to open me
    <div class="menu">
      This is your menu that appears
    </div>
  </label>
</div>

<div class="menu">
  This is your menu that appears
</div>

CSS

.button input {
  display: none;
}

.menu {
  display: none;
}

#open:checked+label>.menu {
  display: block !important;
}

Demo

关于jquery - 当我不在 css active 类中保存时弹出菜单关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57629886/

相关文章:

javascript - 悬停时水平滚动只运行一次?

javascript - JQuery Click 事件只工作一次

html - 登录表单在关注密码输入类型时更改 css

html - 如何使div适合窗口的大小?

javascript - 为什么此脚本不适用于更大的数字/值

javascript - 如何在php中使用jquery中的按钮进行表单提交

javascript - anchor 导航后如何向下滚动页面?

javascript - Youtube iframe 视频通过单个按钮播放/静音。单击播放/静音时还可切换图像

javascript - CSS 重新定位的内容留下足迹

jQuery.css 无法设置重复线性渐变