js实现蒙版效果


Posted in Javascript onJanuary 11, 2020

本文实例为大家分享了js实现蒙版效果展示的具体代码,供大家参考,具体内容如下

思路

1.监听按钮的点击
2.阻止冒泡(最关键的一点)
3.让隐藏的显示出来
4.隐藏滚动条
5.点击文档:获取点击的标签
判断:让显示的都隐藏
显示滚动条

<style>
    *{
      margin: 0;
      padding: 0;
    }
    html,body{
      width:100%;
      height:100%;
    }
    #panel{
      width:100%;
      height:2000px;
      background-color:#000;
      opacity: 0.4;  //透明度
      filter: alpha(opacity: 40);  //用于兼容IE浏览器
      position: absolute;
      top:0;
      left:0;
      display: none;
    }
    #box{
      width:300px;
      height:300px;
      background-color: #fff;
      position: absolute;
      top:50%;
      left:50%;
      margin-left:-150px;
      margin-top:-150px;
      display: none;
      border-radius: 5px;
    }
  </style>
</head>
<body>
  <button id="btn">登录</button>
  <div id="panel"></div>
  <div id="box"></div>
  <script src="js/myFunc.js"></script>
  <script>
    window.onload = function (){
      //1.监听事件的点击
      btn.onclick = function (event){

        //1.0 阻止冒泡
        if(event && event.stopPropagation){ //W3c标准
         event.stopPropagation();
        }else{ //IEx系列 IE 678
         event.cancelBubble = ture;
        }
        //1.1隐藏的显现出来
        $("box").style.display = "block";
        $("panel").style.display = "block";
        //1.2隐藏滚动条
        document.body.style.overflow = "hidden";
      }
      //2.点击文档
      document.onclick = function (event){
        var e = event || window.event;
        //2.1获取点击的标签
        var tranId = e.target ? e.target.id : e.srcElement.id;  //target:获取当前操作对象
        //2.2判断
        if(tranId !== "box"){
          //1.1显示的隐藏出来
          $("box").style.display = "none";
          $("panel").style.display = "none";
          //1.2显示滚动条
          document.body.style.overflow = "auto";
        }else{
          window.location.href = "http://www.baidu.com";
        }

      }
    }
</script>

最为重要的一点是要阻止事件冒泡
获取对象的id: var tranId = e.target ? e.target.id : e.srcElement.id;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery选择子控件&quot;大于号&quot;和&quot; &quot;区别介绍及使用示例
Jun 25 Javascript
jQuery :first选择器使用介绍
Aug 09 Javascript
jquery实现checkbox全选全不选的简单实例
Dec 31 Javascript
js操作输入框提示信息且响应鼠标事件
Mar 25 Javascript
JS中call/apply、arguments、undefined/null方法详解
Feb 15 Javascript
Vue.js使用v-show和v-if的注意事项
Dec 13 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
Mar 06 Javascript
小程序实现带年月选取效果的日历
Jun 27 Javascript
JavaScript选择排序算法原理与实现方法示例
Aug 06 Javascript
小程序组件之自定义顶部导航实例
Jun 12 Javascript
layui加载数据显示loading加载完成loading消失的实例代码
Sep 23 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
Dec 17 Javascript
js实现橱窗展示效果
Jan 11 #Javascript
vue实现购物车选择功能
Jan 10 #Javascript
webpack proxy 使用(代理的使用)
Jan 10 #Javascript
基于vue-draggable 实现三级拖动排序效果
Jan 10 #Javascript
bootstrap实现嵌套模态框的实例代码
Jan 10 #Javascript
jQuery操作动画完整实例分析
Jan 10 #jQuery
基于JavaScript判断两个对象内容是否相等
Jan 10 #Javascript
You might like
先进的自动咖啡技术,真的可以取代咖啡师吗?
2021/03/06 冲泡冲煮
Laravel框架生命周期与原理分析
2018/06/12 PHP
学习ExtJS(一) 之基础前提
2009/10/07 Javascript
Grid得到选择行数据的方法总结
2011/01/17 Javascript
谈谈关于JavaScript 中的 MVC 模式
2013/04/11 Javascript
js 上下左右键控制焦点(示例代码)
2013/12/14 Javascript
Javascript的闭包详解
2014/12/26 Javascript
jquery.mousewheel实现整屏翻屏效果
2015/08/30 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
js实现的万能flv网页播放器代码
2016/04/30 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
用 js 的 selection range 操作选择区域内容和图片
2017/04/18 Javascript
实现单层json按照key字母顺序排序的示例
2017/12/06 Javascript
详解webpack编译速度提升之DllPlugin
2019/02/05 Javascript
9102年webpack4搭建vue项目的方法步骤
2019/02/20 Javascript
electron实现静默打印的示例代码
2019/08/12 Javascript
[46:47]完美世界DOTA2联赛PWL S2 FTD vs Magma 第二场 11.20
2020/11/23 DOTA
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
python定时检查启动某个exe程序适合检测exe是否挂了
2013/01/21 Python
利用Python演示数型数据结构的教程
2015/04/03 Python
python自动zip压缩目录的方法
2015/06/28 Python
Python基础之getpass模块详细介绍
2017/08/10 Python
python中使用xlrd读excel使用xlwt写excel的实例代码
2018/01/31 Python
python自动登录12306并自动点击验证码完成登录的实现源代码
2018/04/25 Python
wtfPython—Python中一组有趣微妙的代码【收藏】
2018/08/31 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
python list转置和前后反转的例子
2019/08/26 Python
python字符串反转的四种方法详解
2019/12/02 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
HTML5 Canvas阴影使用方法实例演示
2013/08/02 HTML / CSS
测绘工程专业个人自我评价
2013/12/01 职场文书
公益活动邀请函
2014/02/05 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
大学生自我推荐信范文
2015/03/24 职场文书
客服专员岗位职责范本
2015/04/07 职场文书