我正在尝试做一些看似简单的事情。我有一个DIV,它是一个标题和一个有内容的兄弟DIV。如果内容DIV的高度等于0,我想隐藏标题DIV,这是它以前的兄弟。下面是我的剧本和小提琴
$(function() {
if ( $('div.grid').height() < 1 ) {
$(this).prev('.titletohide').css('display', 'none');
}
});
答案 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>