Html5页面点击遮罩层背景关闭遮罩层


Posted in HTML / CSS onNovember 30, 2020

今天团队同事接到一个需求,需求是这样的,点击页面按钮弹出红包弹窗,显示黑色遮罩层,点击遮罩层背景和弹窗关闭按钮要关闭弹窗,于是我就做了一个Demo出来,方便以后下次自己再遇到这种需求,上代码。

html代码

页面上只有一个展示的按钮,一个ID为bg的div作为灰色背景遮罩层使用,ID为popup的div作为红包弹窗,ID为close的div作为关闭按钮。

<body>
    <div class="btn" id="btn">展示</div>
    <div class="bg" id="bg">
        <div class="popup" id="popup">
            <div class="close" id="close">X</div>
        </div>
    </div>
</body>

CSS代码

css代码里面没什么技术难点,唯一要注意的是要给灰色背景的遮罩层一个绝对定位,top和lefe都为0就好了

body {
        position: relative;
    }
    .btn {
        width: 100px;
        height: 40px;
        line-height: 40px;
        text-align: center;
        margin:20px auto 0;
        border: 1px solid #333;
        border-radius: 10px;
    }
    .bg {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background-color: rgba(0, 0, 0, .6);
        display: none;
    }
    .popup {
        width: 260px;
        height: 320px;
        background: red;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        border-radius: 15px;
     }
    .popup .close {
        width: 30px;
        height: 30px;
        line-height: 30px;
        text-align: center;
        position: absolute;
        top: -40px;
        right: 0px;
        border: 1px solid #999;
        border-radius: 50%;
        color: #999;
    }

JS代码

var btn = document.getElementById('btn');
    var bg = document.getElementById('bg');
    var popup = document.getElementById('popup');
    var closeBtn = document.getElementById('close');
    // 点击展示按钮显示弹窗
    btn.addEventListener('click', ()=> {
        bg.style.display = 'block';
    });
    // 点击阴影遮罩层关闭弹窗
    bg.addEventListener('click', (e)=> {
        bg.style.display = 'none'
    });
    // 阻止冒泡事件,点击弹窗不会执行父元素的点击事件
    popup.addEventListener('click', (e)=> {
        e.stopPropagation();
    });
    // 点击关闭符号关闭弹窗
    closeBtn.addEventListener('click', (e)=> {
        e.stopPropagation();
        bg.style.display = 'none'
    })

到此这篇关于Html5页面点击遮罩层背景关闭遮罩层的文章就介绍到这了,更多相关Html5关闭遮罩层内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
CSS3教程:新增加的结构伪类
Apr 02 HTML / CSS
CSS伪类与CSS伪元素的区别及由来具体说明
Dec 07 HTML / CSS
CSS3实现可关闭的下拉手风琴菜单效果
Aug 31 HTML / CSS
利用CSS3 动画 绘画 圆形动态时钟
Mar 20 HTML / CSS
解决img标签上下出现间隙的方法
Dec 14 HTML / CSS
5分钟弄清楚html5的drag and drop(小结)
Apr 10 HTML / CSS
HTML5 Canvas的性能提高技巧经验分享
Jul 02 HTML / CSS
HTML5本地存储localStorage、sessionStorage基本用法、遍历操作、异常处理等
May 08 HTML / CSS
HTML5拖拉上传文件的简单实例
Jan 11 HTML / CSS
Html5 Canvas动画基础碰撞检测的实现
Dec 06 HTML / CSS
五分钟学会HTML5的WebSocket协议
Nov 22 HTML / CSS
使用canvas实现黑客帝国数字雨效果
Jan 02 HTML / CSS
使用HTML5加载音频和视频的实现代码
Nov 30 #HTML / CSS
Canvas实现放大镜效果完整案例分析(附代码)
Nov 26 #HTML / CSS
HTML5在手机端实现视频全屏展示方法
Nov 23 #HTML / CSS
关于HTML5+ API plusready的兼容问题
Nov 20 #HTML / CSS
Html5原生拖拽相关事件简介以及基础实现
Nov 19 #HTML / CSS
Canvas获取视频第一帧缩略图的实现
Nov 11 #HTML / CSS
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
Nov 10 #HTML / CSS
You might like
PHP 防注入函数(格式化数据)
2011/08/08 PHP
shopex中集成的站长统计功能的代码简单分析
2011/08/11 PHP
php中json_encode UTF-8中文乱码的更好解决方法
2014/09/28 PHP
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
修复IE9&amp;safari 的sort方法
2011/10/21 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
2013/12/23 Javascript
JavaScript中的anchor()方法使用详解
2015/06/08 Javascript
javaScript实现滚动新闻的方法
2015/07/30 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
2016/08/24 Javascript
Bootstrap字体图标无法正常显示的解决方法
2016/10/08 Javascript
js中编码函数:escape,encodeURI与encodeURIComponent详解
2017/03/21 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
JS实现生成由字母与数字组合的随机字符串功能详解
2018/05/25 Javascript
Babel 入门教程学习笔记
2018/06/13 Javascript
NodeJS搭建HTTP服务器的实现步骤
2018/10/12 NodeJs
layui 选择列表,打勾,点击确定返回数据的例子
2019/09/02 Javascript
使用Python脚本将Bing的每日图片作为桌面的教程
2015/05/04 Python
python打包生成的exe文件运行时提示缺少模块的解决方法
2018/10/31 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
OpenCV+Python3.5 简易手势识别的实现
2020/12/21 Python
FC-Moto瑞典:欧洲最大的摩托车服装和头盔商店之一
2018/11/27 全球购物
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
怎样写演讲稿
2014/01/04 职场文书
高三体育教学反思
2014/01/29 职场文书
教师自我反思材料
2014/02/14 职场文书
2014物价局群众路线对照检查材料思想汇报
2014/09/21 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
端午节寄语2015
2015/03/23 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
小学推普周活动总结
2015/05/07 职场文书
个人催款函范文
2015/06/24 职场文书
500字作文之周记
2019/12/13 职场文书
PHP实现创建以太坊钱包转账等功能
2021/04/21 PHP