我正在尝试这样的事情,但它似乎无法发挥作用。
$(document).ready(function (e) {
$('.close').click(function () {
$('.popup').addClass('hide');
return false;
})
$('.close1').click(function () {
$('.popup_2').addClass('hide');
return false;
})
});
所以hide被添加到popup和popup_2
<div class="popup hide" style="display: block;">
<div class="popup_2 hide" style="display: block;">
添加此隐藏类时
<div id="overlay" style="display: block;"></div>
我希望这个叠加显示:无..
逻辑
if(.popup.hide)&&(.popup_2.hide)==true
{
// overlay should go display:none
}
请妥善解决此问题
答案 0 :(得分:1)
您可以使用.hasClass():
确定是否为任何匹配的元素分配了给定的元素 类。
if($('.popup').hasClass('hide') && $('.popup_2').hasClass('hide')) {
$('#overlay').hide();
}
另请注意,<div>
默认为display: block
。你不再需要为它设置那种风格了。
答案 1 :(得分:0)
使用hasClass
jquery:
if($(".popup").hasClass('hide') && $(".popup_2").hasClass('hide') )
{
$("#overlay").addClass('hide');
}
答案 2 :(得分:0)
试试这个:
$(document).ready(function (e) {
$('.close').click(function () {
$('.popup').addClass('hide');
if($('.popup_2').hasClass('hide')) {
$('#overlay').hide();
}
return false;
})
$('.close1').click(function () {
$('.popup_2').addClass('hide');
if($('.popup').hasClass('hide')) {
$('#overlay').hide();
}
return false;
})
});
当两个弹出窗口都被隐藏时,这将隐藏overlay
。
希望它有所帮助。
答案 3 :(得分:0)
确定是否为任何匹配的元素分配了给定的类。
$(document).ready(function (e) {
function hide_overlay() {
if ($('.popup').hasClass('hide') && $('.popup_2').hasClass('hide')) { //check condition here
$('#overlay').hide(); //hide when condition is true
}
}
$('.close').click(function () {
$('.popup').addClass('hide');
hide_overlay(); //call function
return false;
})
$('.close1').click(function () {
$('.popup_2').addClass('hide');
hide_overlay();//call function
return false;
});
});
答案 4 :(得分:0)
$('.close').click(function(){
$('.popup').addClass('hide');
if( $('.popup_2').hasClass('hide') ){
$('#overlay').hide();
}
return false;
})
$('.close1').click(function(){
$('.popup_2').addClass('hide');
if( $('.popup').hasClass('hide') ){
$('#overlay').hide();
}
return false;
})
工作fiddle
答案 5 :(得分:0)
试试这个:
if(!$('.popup').is(":visible") && !$('.popup_2').is(":visible")) {
$('#overlay').hide();
}
答案 6 :(得分:0)
使用
if(!$('.popup').is(":visible") && !$('.popup_2').is(":visible")) {
$('#overlay').hide();
}