// ==UserScript== // @name keywordFilter // @namespace http://tampermonkey.net/ // @version 0.1 // @description 通过关键字过滤页面内容 // @author wasdjkl // @match *://*/* // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function () { 'use strict'; const blockWords = ["测试", "当然"] function hasKeyword(node) { if (node.textContent === null) return true; return blockWords.find(keyword => node.textContent.includes(keyword)) } function replaceContent(node) { if (!hasKeyword(node)) return; if (node.nodeName === "#text") node.remove() node.childNodes.forEach(replaceContent); } replaceContent(document); var observer = new MutationObserver(() => { replaceContent(document); }); observer.observe(document, { childList: true, attributes: false, subtree: true, }); })();