要阻止一个元素,可以使用:如何通过用户脚本方便地隐藏使用adblocker选择的元素?
var adSidebar = document.getElementById('ads');
if (adSidebar) {
adSidebar.parentNode.removeChild(adSidebar);
}
但这是一个具体元素,一个特定部位。要阻止多个站点中的多个元素,userscript必须多次使用@include
,并且在每个站点中都应该多次列出元素。假设我有一个adblocker过滤器列表,如何方便地将其转换为单个的脚本?
www.youtube.com###watch7-sidebar-contents
www.youtube.com##.yt-masthead-logo-container
www.facebook.com##._1uh-:nth-of-type(2)
www.facebook.com##._2t-e > ._4kny:nth-of-type(1)
www.facebook.com##._1uh-:nth-of-type(1)
www.facebook.com##._50tj._2t-a
www.facebook.com##._50ti._2s1y._5rmj._26aw._2t-a
www.facebook.com###u_0_0
www.facebook.com###fbDockChatBuddylistNub > .fbNubButton
我想保持在一个地方列表,因此,如果需要被阻塞在一个新的网站一个新的元素,我只是简单地从uBlock行添加到列表中。
你必须为该列表编写解析器,或查找/修改现有的解析器。 – wOxxOm
你为什么要这样做? –