弹出层 效果-弹出窗-纯js

html

<!--<div class="loginCon">
        <div id="close">点击关闭</div>
    </div>-->

css

#close{
   background:url(img/close.png) no-repeat;
   width:30px;
   height:30px;
   cursor:pointer;
   position:absolute;
   right:5px;
   top:15px;
   text-indent:-999em;
   }
#mask{
   background-color:#ccc;
   opacity:0.5;
   filter: alpha(opacity=50);
   position:absolute;
   left:0;
   top:0;
   z-index:1000;
   }
#login{
   position:fixed;
   z-index:1001;
   }
.loginCon{
   position:relative;
   width:670px;
   height:380px;
   background:url(img/loginBg.png) #2A2C2E center center no-repeat;
   }
   
   
js

<script>
    function openNew(){//简单封装好的函数
        //获取页面的宽度和高度
        var sWidth=document.body.scrollWidth;
        var sHeight=document.body.scrollHeight;

        //获取可视区域的宽度和高度,如果是竖屏显示,那么宽度和高度是一样的
        var wHeight=document.documentElement.clientHeight;

        //创建遮罩
        var oMask=document.createElement("div");
        oMask.id="mask";
        //给他样式赋值
        oMask.style.width=sWidth+"px";
        oMask.style.height=sHeight+"px";
        document.body.appendChild(oMask);//最后面追加进来,不然不显示,还停留在js代码里面
        var oLogin=document.createElement("div");
        oLogin.id="login";
        //给他的样式赋值
        oLogin.innerHTML="<div class='loginCon'><div id='close'>点击关闭</div></div>";
        document.body.appendChild(oLogin);
        //获取登录框的宽度和高度
        var dWidth=oLogin.offsetWidth;
        var dHeight=oLogin.offsetHeight;
        //获取登录框的left和top
        oLogin.style.left=(sWidth-dWidth)/2+"px";
        oLogin.style.top=(wHeight-dHeight)/2+"px";
        var oClose=document.getElementById("close");
        
        //点击事件
        oMask.onclick=oClose.onclick=function(){
            document.body.removeChild(oMask);
            document.body.removeChild(oLogin);
        }
    }
    
     //引用简单封装好的函数
    window.onload=function(){
        var oBtn=document.getElementById("btnLogin");
                oBtn.onclick=function(){
                    openNew();
                    return false
                }
    }

</script>






//本文来源于网络,本人总结起来并优化,分享给有需要的前端朋友,如有侵权,请联系删除,也请指正、批评

转载于:https://my.oschina.net/parchments/blog/655151

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值