如果隐藏了子div,我想隐藏父div并向body添加一个类, 但是,当孩子可见时,注意到了
if(jQuery('#toolbar > div').is(':visible')){
jQuery('#toolbar').slideToggle('fast');
jQuery('body').toggleClass('body-margin');
}
我的代码有什么问题?
<div id="toolbar">
<div class="buttons" ></div>
</div>
答案 0 :(得分:1)
试试这个
if(jQuery('#toolbar > div').is(':hidden')){
jQuery('#toolbar').slideToggle('fast');
jQuery('body').toggleClass('body-margin');
}
答案 1 :(得分:1)
如果我理解正确,您的代码就会倒退。您可以检查以查看是否有任何按钮div是可见的,如果没有使用您的动画隐藏并通过切换添加类或直接使用addClass()
在这里我检查任何带有“按钮”类的子div:
if (!jQuery('#toolbar').find('div.buttons').filter(function () {
return $(this).is(':visible');
}).length) {
jQuery('#toolbar').slideToggle('fast');
jQuery('body').toggleClass('body-margin');
}
答案 2 :(得分:1)
你需要
if(!jQuery('#toolbar').children('div:visible').length){
jQuery('#toolbar').slideToggle('fast');
jQuery('body').toggleClass('body-margin');
}
这将检查#toolbar
内是否有否可见div。