如果子div(即.post-title)不包含<a>标记,我试图隐藏父div(即#post).有关如何使用我修改过的代码正确完成此操作的任何见解?
<div id="latest">
<div id="post">
<div class="post-image post-image-1"></div>
<div id="post-content">
<div class="post-title post-title-1"></div>
<div id="post-date"></div>
</div>
</div>
<div id="post">
<div class="post-image post-image-2"></div>
<div id="post-content">
<div class="post-title post-title-2"></div>
<div id="post-date"></div>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
$('.post-title').not($('a').hide($("#post"));
Run Code Online (Sandbox Code Playgroud)
注意:复制
ids 是犯罪行为.
通过改变所有的id欺骗来做对class,这应该工作:
$(function () {
$(".post-title").filter(function () {
return $(this).find("a").length == 0;
}).hide();
});Run Code Online (Sandbox Code Playgroud)
<script src="https://code.jquery.com/jquery-3.0.0.js"></script>
<div id="latest">
<div class="post">
<div class="post-image post-image-1"></div>
<div class="post-content">
<div class="post-title post-title-1">Hide This</div>
<div class="post-date"></div>
</div>
</div>
<div class="post">
<div class="post-image post-image-2"></div>
<div class="post-content">
<div class="post-title post-title-2"><a href="">Don't Hide</a></div>
<div class="post-date"></div>
</div>
</div>
</div>Run Code Online (Sandbox Code Playgroud)