浅谈利用遮罩实现点击某区域以外时弹窗的弹出与关闭
2017-03-14 14:01
1041 查看
HTML:
CSS:
#div{
/*设置z-index属性必须设置position:relative或absolute*/
position:relative;
/*设置div位于遮罩的上方*/
z-index:2;
width:300px;
height:200px;
border:1px solid grey;
}
#cover{
position:fixed;
width:100%;
height:100%;
left:0;
top:0;
/*设置遮罩位于div的下方*/
z-index:1;
}
#box{
border:1px solid grey;
/*当弹窗显示时,屏幕滚动时,弹窗始终保持位置固定在屏幕正中,不随屏幕滚动而变化位置*/
position:fixed;
width:400px;
height:300px;
left:50%;
top:50%;
/*配合left:50%和top:50%属性使得浮出层的中心默认在屏幕正中,margin-top为height的一半,margin-left为width的一半*/
margin:-150px 0 0 -200px;
/*设置弹窗位于遮罩的上方*/
z-index:2;
/*开始时隐藏弹窗*/
display:none;
}
JavaScript:
document.getElementById("cover").onclick = function() {
if (document.getElementById("box").style.display == "block") {
document.getElementById("box").style.display = "none";
document.getElementById("cover").style.background = "white";
}
else {
document.getElementById("box").style.display = "block";
document.getElementById("cover").style.background = "#aaa";
}
}
<div id="div">点击除开div的区域可以弹出弹窗</div> <div id="cover"></div> <div id="box">点击除开div和弹窗的区域可以关闭弹窗</div>
CSS:
#div{
/*设置z-index属性必须设置position:relative或absolute*/
position:relative;
/*设置div位于遮罩的上方*/
z-index:2;
width:300px;
height:200px;
border:1px solid grey;
}
#cover{
position:fixed;
width:100%;
height:100%;
left:0;
top:0;
/*设置遮罩位于div的下方*/
z-index:1;
}
#box{
border:1px solid grey;
/*当弹窗显示时,屏幕滚动时,弹窗始终保持位置固定在屏幕正中,不随屏幕滚动而变化位置*/
position:fixed;
width:400px;
height:300px;
left:50%;
top:50%;
/*配合left:50%和top:50%属性使得浮出层的中心默认在屏幕正中,margin-top为height的一半,margin-left为width的一半*/
margin:-150px 0 0 -200px;
/*设置弹窗位于遮罩的上方*/
z-index:2;
/*开始时隐藏弹窗*/
display:none;
}
JavaScript:
document.getElementById("cover").onclick = function() {
if (document.getElementById("box").style.display == "block") {
document.getElementById("box").style.display = "none";
document.getElementById("cover").style.background = "white";
}
else {
document.getElementById("box").style.display = "block";
document.getElementById("cover").style.background = "#aaa";
}
}
相关文章推荐
- JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
- jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
- jQuery实现点击按钮弹出一个div,点击其他区域关闭该div
- vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
- Js点击文字弹出层,点击层以外区域关闭层
- 转:点击弹出div圆角的遮罩层,可关闭可移动(文章源自:烈火网,原文:http://www.liehuo.net/a/201004/2415766.html)
- ecshop 点击商品图片弹出带关闭按钮的遮罩层 显示商品库存
- 点击PopupWindow弹出窗口之外的区域关闭该窗口的方法
- jQuery点击自身以外地方关闭弹出层的简单实例
- 点击弹出层外区域关闭弹出层jquery特效示例
- Asp.net点击按钮弹出文件夹选择框的实现(网页利用ActiveX)
- 利用js实现遮罩以及弹出可移动登录窗口
- Flash 弹出菜单,点击舞台其他地方,关闭菜单功能的 实现方法
- 利用javaScript实现点击输入框弹出窗体选择信息
- Jquery利用mouseenter和mouseleave实现鼠标经过弹出层且可以点击
- JQuery弹出层,点击按钮后弹出遮罩层,有关闭按钮
- jQuery点击按钮后弹出遮罩层,有关闭按钮
- JQuery弹出层,点击按钮后弹出遮罩层,有关闭按钮
- js点击弹出div层实现可拖曳的弹窗效果
- jQuery弹出层_点击自身以外地方关闭弹出层