以下层为目标来关闭一个模态框
Targeting lower layer to close a modal box
我有一个简单的模态框打开像这样:
<div id="social" class="overlay">
<div class="inner">
<a class="close" href="#"><span class="icon-close"></span></a>
CONTENT
</div>
</div>
CSS:
.overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 100;
background: fade(@black, 75%);
display: none;
z-index: 999;
}
#social .inner {
margin: 0 auto;
z-index: 1000;
width: 380px;
}
这里是JS:
$(document).ready(function(){
$("#social").css("height", $(document).height());
$(".social").click(function(){
$("#social").fadeIn();
return false;
});
$(".close").click(function(){
$("#social").fadeOut();
return false;
});
});
当有人点击带有close
类的链接时,模态框关闭。我想模态框也关闭时,有人点击模态框外的任何地方,所以任何地方在覆盖层(z-index:999
)。我不知道如何在不影响顶层(z-index:1000
)的情况下针对下层(z-index:999
)。
我对jQuery了解不多,所以如果你能以新手的方式表达你的建议,那就太好了。谢谢!:)
当叠加被点击时,你可以通过在叠加上附加一个点击事件处理程序来淡出模态框。JSFiddle
HTML<input type="button" class="social" value="test" />
<div id="social" class="overlay">
<div class="inner">
<a class="close" href="#">
<span class="icon-close">X</span>
</a>
CONTENT
</div>
</div>
CSS .overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 100;
background: rgba(0, 0, 0, 0.5);
display: none;
z-index: 999;
}
#social .inner {
margin: 0 auto;
z-index: 1000;
width: 380px;
}
jQuery $(document).ready(function () {
$("#social").css("height", $(document).height());
$(".social").click(function () {
$("#social").fadeIn();
return false;
});
$(".close").click(function () {
$("#social").fadeOut();
return false;
});
//This is the part that handles the overlay click
$("#social").on('click', function (e) {
if (e.target == this) {
$(this).fadeOut();
}
});
});
相关文章:
- 打开一个模态并将其链接到AngularJS中的指令
- bootstrap消除模态并显示另一个模态
- 如何将一个模态放在一边-显示其他模态(像..这样的向导)
- 当你有很多文本框时,如何从一个模态中只填充一个文本框
- 将数据从一个模态发送到另一个模态
- 创建一个模态指令,并将click事件绑定到angular js中
- 打开一个模态(在Codeigniter中),该模态从依赖于phpvar的URL加载(在iframe中)内容
- 创建一个模态窗口以使用 AngularJS 加载数据
- 引导多个模态关闭所有与最后一个模态
- 基础 - 在关闭另一个模态时打开另一个模态
- 角度:在另一个模态指令中加载的谷歌地图指令保持空白
- 当按下当前模态上的按钮时,如何触发另一个模态
- 当数据库中已经存在 fname 时,我想弹出一个模态
- 无法从引导 PHP 中的另一个模态调用模态
- 用Javascript弹出一个模态
- 在整个谷歌地图上放置透明的覆盖(就像一个模态覆盖)
- 在JQuery-ajaxbeforesend中调用一个模态对话框来收集一些信息
- 试图使一个模态弹出菜单
- 如何将输入字段绑定到一个模态输入字段
- 在第一个模态中打开另一个模态时,启动模态问题