美文网首页
鼠标点击菜单以外的地方 使下拉菜单消失

鼠标点击菜单以外的地方 使下拉菜单消失

作者: 边沉 | 来源:发表于2017-08-11 16:03 被阅读0次

//点击“显示菜单”按钮时,显示菜单,并阻止事件冒泡

document.querySelector('.showBtn').addEventListener('click', function(e){
    document.querySelector('.menu').classList.add('show');
    e.stopPropagation();//关键在于阻止冒泡
}, false);

//点击“菜单”内部时,阻止事件冒泡。(这样点击内部时,菜单不会关闭)

document.querySelector('.menu').addEventListener('click', function(e){
    e.stopPropagation();
}, false);

//监听整个document的点击事件,如果能收到事件(说明点击源既不是“显示菜单”按钮,也不来自菜单内部),就可以放心关闭菜单了

document.addEventListener('click', function(){
    document.querySelector('.menu').classList.remove('show');
}, false);

相关文章

  • 鼠标点击菜单以外的地方 使下拉菜单消失

    //点击“显示菜单”按钮时,显示菜单,并阻止事件冒泡 //点击“菜单”内部时,阻止事件冒泡。(这样点击内部时,菜单...

  • PDF.js 添加点击事件,添加鼠标滑动事件

    功能需求:点击PDF 预览界面,出现下来菜单,滚动鼠标预览PDF ,下拉菜单消失。 1.在源码中添加点击事件 大概...

  • Vue中判断点击是否在组件外

    自己使用div模拟select,有如下需求: 组件获得焦点时,自动弹出下拉菜单 鼠标点击下拉菜单时,下拉菜单不能收...

  • Bootstrap

    Bootstrap的导航条下拉菜单为了适应移动设备没有鼠标hover的状态,都是点击弹出下拉菜单,为了适应一般网站...

  • css学习 第五天

    CSS 下拉菜单 使用 CSS 创建一个鼠标移动上去后显示下拉菜单的效果。 基本下拉菜单 当鼠标移动到指定元素上时...

  • 简易下拉菜单

    今天做了一个简易的下拉菜单: 页面头部一个下拉菜单,鼠标滑过下拉菜单下方显示一个菜单项列表,且下拉菜单的背景图片切...

  • react阻止事件冒泡的3种方法

    在实现一个常见的需求,也就是类似于下拉菜单,点击菜单以外的区域点击的时候会隐藏菜单,这个过程中就遇到了问题。 因为...

  • CSS下拉菜单

    基本下拉菜单 当鼠标移动到指定元素上时,会出现下拉菜单。 实例 .dropdown {position: rela...

  • JS点击(更换背景颜色)

    JS点击更换背景颜色分为四种: 1.单独按钮点击更换 2.下拉菜单更换背景 3.鼠标点击背景更换 4.重复点击按钮更换

  • JavaScript小笔记

    点击其它区域,隐藏下拉菜单

网友评论

      本文标题:鼠标点击菜单以外的地方 使下拉菜单消失

      本文链接:https://www.haomeiwen.com/subject/opqrrxtx.html