美文网首页
遮罩层实现

遮罩层实现

作者: 至尊幽蓝 | 来源:发表于2018-07-15 17:37 被阅读18次

代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #mask {
            width:100%;
            height:100%;
            background-color:#000;
            position:absolute;
            top:0;
            left:0;
            z-index:2;
            opacity:0.3;
            /*兼容IE8及以下版本浏览器*/
            filter: alpha(opacity=30);
            display:none;
        }

        #dialog {
            width:200px;
            height:200px;
            background-color:white;    
            margin: auto;
            position: absolute;
            z-index:3;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            display:none;
        }
    </style>
</head>
<body>
    <div id="mask"></div>
    <div id="dialog">
        <a href="javascript:hideDialog()">关闭</a>
    </div>
    <button id='popMaskBtn'>弹出遮罩层</button>
</body>
<script>
    //遮罩层
    var mask = document.getElementById("mask");
    //弹框
    var dialog = document.getElementById("dialog");

    //窗口加载完成事件
    window.onload = function(){
        //为弹出遮罩层的按钮添加事件
        document.getElementById("popMaskBtn").addEventListener('click',function(){
            mask.style.display = "block";
            dialog.style.display = "block";
        });

        //添加点击事件-点击遮罩层后关闭遮罩层
        window.addEventListener("click",function(event){
            if(event.target == mask){
                hideDialog();
            }
        });
    };
    
    //关闭遮罩层
    function hideDialog(){
        mask.style.display = "none";
        dialog.style.display = "none";
    }
    
</script>

</html>

实现效果:

点击按钮,显示遮罩层,弹出弹框

点击遮罩层,隐藏遮罩层,隐藏弹框

相关文章

网友评论

      本文标题:遮罩层实现

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