Firefox adblock plus。如何删除元素而不是隐藏它?

Firefox adblock plus。如何删除元素而不是隐藏它?

所以我有这个规则

www.foobar.com##div.annotation

它很好地隐藏了 div。但是我该如何删除<div>

该元素是一个令人讨厌的注释 cookie/任何带有 CSS 属性的元素,position:fixed因此我看到页面顶部有透明的条。

答案1

尝试油脂猴:,并创建新脚本

 // ==UserScript==
// @name           bleh somthing
// @description    ---s
// @version        1.0
// @license        Public Domain
// @grant          none
// @include        http*://*.DOMAIN.com/*
// @include        http://www.DOMAIN.com/.*
// ==/UserScript==


rem = document.querySelector('.annotation');
rem.parentNode.removeChild(rem);

答案2

我正在使用 tampermonkey。此脚本用于删除视频而不是隐藏它们。该示例针对一个网站,但类比起来,它可以在任何网站上完成。

let listDeletes = [
    "/chennal/somestuff1",
    "/chennal/somestuff2",
    "/chennal/somestuff3",
    "/chennal/somestuff4",
    "/chennal/somestuff5",
    "/chennal/somestuff6",
    "/chennal/somestuff7",
    "/chennal/somestuff8",
    "/chennal/somestuff9",
];

function delBoxes() {

    for (let i = 0; i < listDeletes.length; i++) {
        document.querySelectorAll(`li a[href^="${listDeletes[i]}"`).forEach(e => e.closest('li').remove());
    }
}
delBoxes();

const observer = new MutationObserver(function (mutation) {
    mutation.forEach(function (mutation) {
        if (mutation.addedNodes.length) {
            delBoxes();
        }
    })
});
const playlistWrapper = document.querySelector('#videoPlaylist');
observer.observe(playlistWrapper, {
    childList: true
})

相关内容