页面上有一个项目列表,有些是空白的,其中一个例子是:
<div class="item itemask">
<div class="tophead">
<div class="itemnumber">30</div>
<a class="article" href=""></a>
</div>
<div class="bottomhead"> points by <a class="userlink" rel=""></a> ago <a href="/item?id=">discuss</a>
</div>
因此,可以使用jQuery或JavaScript在页面上<a class="article" href="">
的任何实例中查找div class=item
的实例,然后删除或隐藏该父个人div
class=item
包含那段代码?
答案 0 :(得分:5)
更新回答:根据评论中的说明,请尝试以下方式:
$('div.item:has(a.article[href=""])').remove();
或者这也应该有效:
$('div.item:has(a.article:not([href]))').remove();
如果您遇到任何问题,请尝试以下方法:
$('div.item a.article').filter(function() {
return $.trim(this.innerHTML) == '';
}).closest('div.item').remove();
原始回答:
使用jQuery:
$('div.item:has(a.article)').remove();
这会选择<div>
个item
元素,其中<a>
类具有类article
的后代.hide()
元素,并将其删除。
当然,如果您愿意,可以使用$('div.item:has(a.article)').hide();
:
parent
如果您真的想要删除a.article
的实际$('div.item :has( > a.article)').remove();
,那么您可以这样做:
a.article
这将删除.item
的父级而不是{{1}}级的父级。不确定你的意思。
答案 1 :(得分:2)
隐藏:
$("div.item a.article[href='']").parents(".item").css('display','none');
要删除:
$("div.item a.article[href='']").parents(".item").remove();