一个是开发中遇到的例子
<div class="b2r esb" id="e_adv_s3">
<p>
<a href="javascript:;">超链接A</a>
<a href="javascript:;">超链接B</a>
</p>
<p>
<a href="javascript:;">超链接C</a>
<a href="javascript:;">超链接D</a>
</p>
<p>
<a href="javascript:;">超链接E</a>
<a href="javascript:;">超链接F</a>
</p>
<p>
<a href="javascript:;" style="display:none">超链接G</a>
<a href="javascript:;" style="display:none">超链接H</a>
</p>
</div>
如上代码所示,最后一个<p>
标签的<a>
标签都已经隐藏,但是对应的<p>
标签并没有隐藏,还占着对应dom的位置,因此需要找到这样的<p>
标签,然后隐藏掉。
$("#e_adv_s3 p").each(function(){
if( $(this).children('a:hidden').length == 2 ){
$(this).hide();
}
});