【发布时间】:2026-02-04 02:55:01
【问题描述】:
好的,所以我这里有这个 sn-p http://jsfiddle.net/8vFEd/;
每当弹出窗口出现时,我要么想禁用背景,以便用户在关闭第一个弹出窗口之前无法点击另一种语言,要么我将如何实现这一点,每当用户点击第二种语言时,第一个弹出窗口消失,并出现相应的弹出窗口。
【问题讨论】:
标签: javascript jquery html css modalpopup
好的,所以我这里有这个 sn-p http://jsfiddle.net/8vFEd/;
每当弹出窗口出现时,我要么想禁用背景,以便用户在关闭第一个弹出窗口之前无法点击另一种语言,要么我将如何实现这一点,每当用户点击第二种语言时,第一个弹出窗口消失,并出现相应的弹出窗口。
【问题讨论】:
标签: javascript jquery html css modalpopup
我的建议是在背景上放置一个叠加层,以“捕捉”到页面其余部分的点击。在<div class='lang'> append 调用之前,将以下内容添加到您的 $('.prop a').click() 函数中:
$("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 而不是 relative。
【讨论】:
在你的 onclick 开头添加这个
$(".lang").remove();
这将在用新的 DOM 重新绘制 DOM 之前使用 lang 类删除或清除 div。
【讨论】: