纯js实现遮罩层效果原理分析
1、实现原理
本片文章的是实现原理如下:
*实际上弹出层、遮罩层和原页面显示分别为三个不同的div
*弹出层的层级在遮罩层之上,遮罩层的层级在原页面显示之上;
*遮罩层有通明效果
*遮罩层没有实际意义,则无需在html部分就写上,当然写上同样可以实现
2、代码实现
html语言如下:
<html> .... <body> <center> <div><inputtype="button"value="go"onclick="show()"></div> <divid="alert"style="display:none;"> <form> 登录 <inputtype="text"><inputtype="password"><inputtype="submit"value="login"> </form> </div> </center> </body> </html>
javascript实现弹出层和遮罩层:
<spanstyle="font-size:12px;">functionshow(){
varalertPart=document.getElementById("alert");
alertPart.style.display="block";
alertPart.style.position="absolute";
alertPart.style.top="50%";
alertPart.style.left="50%";
alertPart.style.marginTop="-75px";
alertPart.style.marginLeft="-150px";
alertPart.style.background="cyan";
alertPart.style.width="300px";
alertPart.style.height="200px";
alertPart.style.zIndex="501";
varmybg=document.createElement("div");
mybg.setAttribute("id","mybg");
mybg.style.background="#000";
mybg.style.width="100%";
mybg.style.height="100%";
mybg.style.position="absolute";
mybg.style.top="0";
mybg.style.left="0";
mybg.style.zIndex="500";
mybg.style.opacity="0.3";
mybg.style.filter="Alpha(opacity=30)";
document.body.appendChild(mybg);
document.body.style.overflow="hidden";
}
</script></span>
这里用z-index来区分层级,opacity和filter:alpha(opacity=)透明度,document.createElement("div")和document.body.appendChild()这些都是在之前出现过,应用过的了,这样我们就能实现了,其实当原理明白了的那一刻,一切也就容易多了吧。
路漫漫而修远兮啊
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短