您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
colamanga漫画广告屏蔽器!
// ==UserScript== // @name colamanga漫画广告屏蔽器 // @namespace https://www.colamanga.com // @version 2024-09-04 // @description colamanga漫画广告屏蔽器! // @author You // @match https://www.colamanga.com/* // @icon https://www.colamanga.com/favicon.png // @license MIT // @grant none // ==/UserScript== (function () { "use strict"; const observer = new MutationObserver((mutations) => { mutations.forEach((mutation) => { if (mutation.addedNodes.length > 0) { console.log(mutation.addedNodes); mutation.addedNodes.forEach((node) => { if (node.tagName === "IFRAME") { console.log("发现新插入的 iframe"); // 在这里可以进行你想要的处理,比如屏蔽 iframe node.style.display = "none"; } }); } }); }); observer.observe(document, { childList: true, subtree: true }); setInterval(function () { document.querySelector("#HMhrefleft").style.display = "none"; document.querySelector("#HMhrefright").style.display = "none"; const allElements = document.getElementsByTagName("*"); for (let i = 0; i < allElements.length; i++) { const element = allElements[i]; if (element.tagName === "DIVZ") { // 假设组件名是大写敏感的,如果不是,请根据实际情况调整 element.style.display = "none"; } } }, 2000); let operations = []; function logOperation(type, target, value) { operations.push({ type: type, target: target, value: value, }); } const originalCreateElement = document.createElement; document.createElement = function (tagName) { const element = originalCreateElement.call(document, tagName); logOperation("createElement", tagName, null); return element; }; const originalAppendChild = document.appendChild; document.appendChild = function (child) { const parent = this; originalAppendChild.call(parent, child); logOperation("appendChild", parent, child); return child; }; const originalRemoveChild = document.removeChild; document.removeChild = function (child) { const parent = this; originalRemoveChild.call(parent, child); logOperation("removeChild", parent, child); return child; }; // You can add more overridden methods for other DOM operations as needed. // Periodically log the operations (for demonstration purposes). setInterval(() => { if (operations.length > 0) { console.log(operations); operations = []; } }, 5000); })();