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

标签 jquery html css

我正在尝试做一些看似简单的事情。我有一个包含标题的 DIV 和一个包含内容的同级 DIV。如果内容 DIV 的高度等于 0,我想隐藏标题 DIV,它是它的前一个兄弟。下面是我的脚本和 fiddle

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

https://jsfiddle.net/mj5t4x9g/

最佳答案

您的代码存在一些问题。第一个是 $('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>

关于jquery - 如果高度 = 0,则隐藏上一个 Div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43881309/

相关文章:

javascript - 如何在 Google map 上单击打开 jQuery UI 对话框

javascript - jQuery AJAX 调用不执行成功 block

php - Jquery 获取数组所有元素

javascript - 如何在不刷新整个 html 页面的情况下刷新动态表

javascript - show() 和 toggle() 没有按预期工作

html - 不要在 Placeholder IE10 上应用文本转换

javascript - 动态/动态变量 - 响应式网络

html - 是否有必要(或建议)向 HTML 元素添加 CSS 样式?

html - Rails 清理方法不删除 html 标签

javascript - 如何防止 Ajax 溢出/服务器崩溃? (Arduino/ESP8266环境)