2014-05-02 46 views
0

我有一个父div和2个嵌套子div。当第二个子div不包含任何内容时,我想隐藏第一个子div和父div。我想知道如何做到这一点?如何隐藏2个子div的父div?

我想隐藏#portfolio.portfolio-works-container div为空。

<div id="portfolio"><!--portfolio--> 
     <div id="portfolio-works"><!--portfolio-works--> 
      <div class="portfolio-works-container"><!--portfolio-works-container--> 


      </div><!--/portfolio-works-container--> 
     </div><!--/portfolio-works--> 
    </div><!--/portfoio--> 

回答

1

您可以使用:

if($('.portfolio-works-container').contents().length == 0) { 
    $('#portfolio').hide() 
} 
+2

这不会考虑到文本节点。而不是孩子()你可以使用contents() – Arbel

1

使用.is():empty()选择。试试这个:

if($(".portfolio-works-container").is(':empty')){ 
    $("#portfolio").hide(); 
} 
0

既然你已经使用jQuery(因为这个问题被标记):为了隐藏父DIV,你需要使用的父()函数来查找父元素

if ($('.portfolio-works-container').html()=='') 
    $('#portfolio').hide(); 
0

jQuery的。 在下面的代码,你会检查,如果格是空的,然后找到家长的div并隐藏他们

​​
3

试试这个:

jQuery(document).ready(function($){ 
    if($.trim($('.portfolio-works-container').html()).length == 0){ 
     $('#portfolio').hide();   
    } 
}); 

请检查:jsfiddle url