如果高度= 0,则隐藏上一个Div

时间:2017-05-09 23:24:31

标签: jquery html css

我正在尝试做一些看似简单的事情。我有一个DIV,它是一个标题和一个有内容的兄弟DIV。如果内容DIV的高度等于0,我想隐藏标题DIV,这是它以前的兄弟。下面是我的剧本和小提琴

$(function() {  
    if ( $('div.grid').height() < 1 ) {
        $(this).prev('.titletohide').css('display', 'none');            
    }
});

https://jsfiddle.net/mj5t4x9g/

1 个答案:

答案 0 :(得分:2)

您的代码存在一些问题。第一个是$('div.grid')匹配多个元素。而$(this)并未提及您的想法。试试这个:

$('div.grid').each(function() {
  if ($(this).height() < 1) {
    $(this).prev('.titletohide').css('display', 'none');
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="titletohide">
  Heading 1
</div>
<div class="grid" style="height:0px;"><span style="display:none">text text</span></div>

<div class="titletohide">
  Heading 2
</div>
<div class="grid">
  more more
</div>