gelbooru去广告

主要是去掉那个ai画的广告,有其他广告影响比较大就再说

Verze ze dne 14. 11. 2023. Zobrazit nejnovější verzi.

// ==UserScript==
// @name         gelbooru去广告
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  主要是去掉那个ai画的广告,有其他广告影响比较大就再说
// @author       mianfa
// @match        https://gelbooru.com/index.php?page=post&s=list&tags=*
// @match        https://gelbooru.com/index.php?page=post&s=view&id=*
// @icon         https://gelbooru.com/favicon.png
// @grant        none
// @run-at       document-start
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

        // 在document-start阶段执行脚本

    // 检查DOM是否已准备好
    function checkDOM() {
        if (document.body) {
            // 执行操作,例如隐藏具有类名为"headerAd"的元素
            var elements = document.getElementsByClassName("headerAd");
            for (var i = 0; i < elements.length; i++) {
                elements[i].style.display = "none";
            }
        } else {
            // 如果DOM还未准备好,则等待一段时间后重新检查
            setTimeout(checkDOM, 100);
        }
    }

    // 开始检查DOM
    checkDOM();

    // 创建MutationObserver实例
    var observer = new MutationObserver(function(mutations) {
        mutations.forEach(function(mutation) {
             // 检查DOM是否已准备好
            if (document.body) {
                // 执行操作,例如隐藏具有类名为"headerAd"的元素
                var elements = document.getElementsByClassName("headerAd");
                for (var i = 0; i < elements.length; i++) {
                    elements[i].style.display = "none";
                }
                // 停止观察变化,因为我们已经完成了我们的任务
                observer.disconnect();
            }
            // 检查DOM是否已准备好
            if (document.body) {
                // 获取所有图片元素
                var images = document.querySelectorAll('img');

                // 遍历图片元素
                images.forEach(function(image) {
                    // 检查图片链接是否匹配目标链接
                    if (image.src === 'https://gelbooru.com/extras/store/728/72890-4.jpg') {
                        // 隐藏匹配的图片
                        image.style.display = 'none';
                    }
                });

                // 停止观察变化,因为我们已经完成了我们的任务
                observer.disconnect();
            }
                        if (document.body) {
                // 获取所有超链接元素
                var links = document.querySelectorAll('a');

                // 遍历超链接元素
                links.forEach(function(link) {
                    // 检查超链接的href属性是否匹配目标链接
                    if (link.href === 'https://www.soulgen.net/landing/real-page?utm_source=link-gbr&cp_id=banner') {
                        // 隐藏匹配的超链接
                        link.style.display = 'none';
                    }
                });

                // 停止观察变化,因为我们已经完成了我们的任务
                observer.disconnect();
            }
        });
    });

    // 配置观察器以监视DOM树的变化
    var config = { childList: true, subtree: true };
    observer.observe(document.documentElement, config);
})();