弹出模式化遮罩层的方法有很多,在本文为大家介绍下使用js实现最简单的模式化遮罩层,具体如下,感兴趣的朋友不要错过
假设我们有一个容器container如下: 代码如下: <style type=”text/css”> #container{width:auto;height:auto; overflow:hidden;} /*这里的overflow:hidden;属性主要是为了设置使超出container的部分自动隐藏,之所以设置这个属性,是为了解决ie8及以下版本浏览器兼容性问题*/ </style> <div id=”container” > </div> 现在要在网页中弹出一个div层,使在关闭弹出的div层之前不可操作container。 那么,我们首先需要定义出这个遮罩的div层如下: 代码如下: <div id=”continer”> <!—只所以将遮罩层放到container里面 <divid=”shade” style=”width:1600px;height:900px;/*给遮罩层一个初始大小*/”> <input name=”close” id=”close” value=”关闭”> </div> </div> 接下来,就是用js来使遮罩层始终显示在屏幕上并不可操作遮罩层下面的内容,点击关闭按钮关闭遮罩层 代码如下: <script type=”text/javascript”> $(function(){ //获取当前浏览器的内部宽和高 varnWidth = window.innerWidth; varnHeight = window.innerHeight; //设置遮罩层的宽和高 $("#shade").width(nWidth); $("#shade").height(nHeight); //设置关闭按钮居中显示 $("#close").css("margin-top",nHeight/2-50+"px"); //设置当浏览器大小改变时触发的事件 $(window).resize(function(){ //获取当前浏览器的内部宽和高 varnWidth = window.innerWidth; varnHeight = window.innerHeight; //设置遮罩层的宽和高 $("#shade").width(nWidth); $("#shade").height(nHeight); //设置关闭按钮居中显示 $("#putPwd").css("margin-top",nHeight/2-50+"px"); }); //设置关闭按钮消除遮罩层 $("#close").click(function(){ $("#shade").removeAttr("id"); $("#shade").html(""); }); //也可用纯js来写 Document.getElementById(“shade”).style…….; //后面多说无益,如果有兴趣又实在不会写,可以和本人联系。 }) </script>