我试过这个:
<script>
$(document).ready(function() {
$('#title_article:not(:has(>hr:first-child))').hide();
});
</script>
但从未表现出..
<div id="title_article">
<span style="padding-left:121px;">Article | </span>
<span class="entry-date"><?php echo get_the_date(); ?></span>
</div>
如果<hr>
存在<hr>
,则要求检查#title_article
的子元素隐藏父级或<hr>
<div id="title_article"></div>
不在<!-- page content -->
<div id="title_article></div>
<hr>
<!-- page content -->
但在{{1}}之内:
{{1}}
答案 0 :(得分:3)
$(document).ready(function() {
if($("#title_article").next("hr").length==0)
$("#title_article").hide()
});
http://fiddle.jshell.net/prollygeek/57gcx6or/3/
编辑:
使用.siblings()
答案 1 :(得分:3)
您正在寻找.next()
获取匹配元素集中每个元素的紧随其后的兄弟。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个兄弟。
您必须执行以下操作:
if ($('#title_article').next('hr').length)
$('#title_article').hide();
在您的示例中,<hr>
不是#title_article
的子元素,而是兄弟姐妹。
答案 2 :(得分:1)
if($('#title_article').children('hr').length > 0) {
$('#title_article').hide();
}
if($('#title_article').children('hr').length != 0) {
$('#title_article').hide();
}
$('#title_article hr').parent().hide();
这会隐藏其中包含#title_article
的每个hr
。