使用 Adblock Plus 过滤器阻止 HTML 元素

使用 Adblock Plus 过滤器阻止 HTML 元素

我正在查看有关如何使用 ABP 阻止元素的指南:https://adblockplus.org/en/filters#elemhide

举个例子,我进入选项并添加了一个过滤器

blankmediagames.com/TownOfSalem/###fb-root

fb-root从理论上讲,这应该可以阻止 id包含几个占用大量内存但不需要的 iframe 的div ,并且该规则只适用于该网站https://blankmediagames.com/TownOfSalem/(塞勒姆镇游戏的网站)。

虽然我创建了规则,但我没有看到元素被阻止。当我在 Chrome 中打开开发者工具时,它仍然在那里,我还可以在 Chrome 的任务管理器中看到子框架及其内存使用情况(显示为Subframe: https://facebook.com/并使用 ~65K)。

我肯定做错了什么。我想找到一种方法来避免每次到这里时都必须手动结束子帧进程。我是否遗漏了一些显而易见的东西?

答案1

元素隐藏过滤器只能限制在域中,而不能限制在域中的特定 URL 中。以下是应该隐藏该页面上的元素的过滤器:

blankmediagames.com###fb-root

但是,如果你想要阻止整个框架,元素隐藏过滤器将无济于事。为此,你需要创建一个阻止过滤器,例如:

||facebook.com^$subdocument,domain=blankmediagames.com

该过滤器会阻止 blankmediagames.com 上任何包含来自 facebook.com 的内容的子框架。

或者,您可以在 Adblock Plus 设置页面中启用“阻止社交媒体图标跟踪”选项(或其他广告拦截器中的类似选项),这样可以阻止所有社交媒体元素。

相关内容