javascript 在页面加载时检查是否存在具有特定 class 的跨度(在 <tr> 下),如果不存在则删除整个 <tr>
javascript on page load check if a span (under <tr>) with a specific class exist, if does not exist remove the entire <tr>
我正在尝试为我最喜欢的目录列表站点创建我自己的 greasemonkey 脚本:)
事情并不是它列出的所有内容都对我有用,我检查了网站代码,看起来每个条目都在
现在看来,我只对具有这种格式的格式感兴趣:
<tr class="project-description">
<td colspan="6">
<div class="project-desc-inner">
<div class="project-synopsis">
<p class="trunk8">This is an entry</p>
</div>
<div class="project-verification">
<span class="verfied-badge"> <~~~~~~~~~~ THIS SPAN
<span class="currency-symbol">$</span>
<span class="icon-tick"></span>
Verified
</span>
</div>
<div class="project-actions">
<a href="#">
<button class="btn">LOL</button>
</a>
</div>
</div>
</td>
</tr>
如你所见,<span class="verfied-badge">
的存在触发了它。
我也希望 javascript 在页面加载后处理这个,因为该站点也通过 javascript 填充 table。
我知道我的问题还没有解决,但如果有人能提供一个可以引导我的例子,那就足够了。
非常感谢!
$(document).ready(function(){
$("tr.project-details").each(function(){
var self = $(this);
if(self.find("span.verfied-badge").length==0)
self.remove();
});
});
仅调用 .remove
一次的筛选选择器
由于 TR
中还有其他与问题无关的 span
元素,因此不可能编写纯 CSS 过滤器选择器字符串(因此我们可以使用 .has
) 以充分过滤元素。但我们不是单独删除每个 table 行,而是先过滤它们并一次删除它们。
$("tr.project-description").filter(function() {
return !$("span.verfied-badge", this).length;
}).remove();
我正在尝试为我最喜欢的目录列表站点创建我自己的 greasemonkey 脚本:)
事情并不是它列出的所有内容都对我有用,我检查了网站代码,看起来每个条目都在
现在看来,我只对具有这种格式的格式感兴趣:
<tr class="project-description">
<td colspan="6">
<div class="project-desc-inner">
<div class="project-synopsis">
<p class="trunk8">This is an entry</p>
</div>
<div class="project-verification">
<span class="verfied-badge"> <~~~~~~~~~~ THIS SPAN
<span class="currency-symbol">$</span>
<span class="icon-tick"></span>
Verified
</span>
</div>
<div class="project-actions">
<a href="#">
<button class="btn">LOL</button>
</a>
</div>
</div>
</td>
</tr>
如你所见,<span class="verfied-badge">
的存在触发了它。
我也希望 javascript 在页面加载后处理这个,因为该站点也通过 javascript 填充 table。
我知道我的问题还没有解决,但如果有人能提供一个可以引导我的例子,那就足够了。
非常感谢!
$(document).ready(function(){
$("tr.project-details").each(function(){
var self = $(this);
if(self.find("span.verfied-badge").length==0)
self.remove();
});
});
仅调用 .remove
一次的筛选选择器
由于 TR
中还有其他与问题无关的 span
元素,因此不可能编写纯 CSS 过滤器选择器字符串(因此我们可以使用 .has
) 以充分过滤元素。但我们不是单独删除每个 table 行,而是先过滤它们并一次删除它们。
$("tr.project-description").filter(function() {
return !$("span.verfied-badge", this).length;
}).remove();