2011-08-25 87 views
2

好的,所以我有这个片段http://jsfiddle.net/8vFEd/在这里;在jquery弹出窗口中禁用背景

无论何时弹出窗口,我要么禁用背景,以便用户不能点击其他语言,直到他们关闭第一个弹出窗口,或者我将如何实现该功能,无论用户何时点击第二种语言,第一个弹出消失并出现相应的弹出窗口。

回答

10

我的建议是将背景叠加在背景上,以便“捕捉”点击到页面的其余部分。以下内容添加到您的$点击()函数,该<div class='lang'>追加调用之前( '道具一个。'):

$("body").append('<div class="modalOverlay">'); 

,这对你的CSS:

.modalOverlay { 
    position: fixed; 
    width: 100%; 
    height: 100%; 
    top: 0px; 
    left: 0px; 
    background-color: rgba(0,0,0,0.3); /* black semi-transparent */ 
} 

然后在你的代码处理“关闭”点击,从DOM中删除这个.modalOverlay。请记住在弹出窗口之前添加叠加层,以便它位于窗口后面(或将“z-index:5”添加到覆盖css,将“z-index:6”添加到弹出的css)

我也建议修改您的.lang css规则为position: absolute;fixed而不是相对。

+2

可以请你在jsfiddle上演示一个演示 – Mike

0

在你的onclick

$(".lang").remove(); 

,将删除或用新的重绘DOM之前清除郎类的div开头添加这一点。