根据div中的内容显示/隐藏

时间:2011-05-09 16:17:03

标签: javascript hide show

我想基于div标签显示或隐藏标题元素(例如<h3></h3>),该标记包含或不包含内容。内容是动态添加的,但是header元素是静态的,这导致显示的header元素在其下面没有多次内容。这是一个例子:

<div id=related-section>
<h3>Related Articles</h3>
<div id=related>
<p>This content is being shown, sometimes it is not shown.</p>
</div>
</div>

进一步详情: <div id=related>看起来有两种状态,它是(例如)1)<div id=related><p>Prima insolens hendrerit his et, sit exerci detracto...</p></div>或2)<div id=related></div>。后者表明div内部的内容为零。

2 个答案:

答案 0 :(得分:3)

使用jQuery后,您可以在更新#related

的内容后执行以下操作
if( $("#related *").length > 0 ) {
   $("#related-section h3").show();
} else {
   $("#related-section h3").hide();
}

但如果它是您提供的完整代码,您还可以隐藏/显示整个div #related-section,因为它没有其他可见内容。

答案 1 :(得分:1)

使用以下代码为您创建了一个小提琴:http://jsfiddle.net/2vJfN/