2011-05-09 105 views
1

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

<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内没有内容。

+0

你可以提供一些JS用这个例子吗? – pixelbobby 2011-05-09 16:19:32

+0

看起来像这个OP是一个和done'r – pixelbobby 2011-05-12 18:01:21

回答

3

使用jQuery你能做到以下几点,之后更新的#related

if($("#related *").length > 0) { 
    $("#related-section h3").show(); 
} else { 
    $("#related-section h3").hide(); 
} 

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

+0

+1为好解决方案 – pixelbobby 2011-05-09 16:30:54

+0

优秀,完美的作品,谢谢! – SMan 2011-05-09 17:05:09

1

为您建立一个拨弄着这里的代码:http://jsfiddle.net/2vJfN/

+0

+1这工作,虽然只有纯文本是在与我的答案相反的#相关。 – DanielB 2011-05-09 16:28:51

+0

@DanielB:谢谢!更新我的小提琴以检查长度。好点。 – pixelbobby 2011-05-09 16:30:44

+0

太棒了,完美! – SMan 2011-05-09 17:02:49