您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Blur YouTube, Reddit, Instagram comments containing toxic keywords with click-to-reveal
// ==UserScript== // @name No-Noise: Smarter Comment Blurrer // @namespace http://tampermonkey.net/ // @version 1.0 // @description Blur YouTube, Reddit, Instagram comments containing toxic keywords with click-to-reveal // @author @cys28-in // @match https://www.youtube.com/* // @match https://www.reddit.com/* // @match https://www.instagram.com/* // @license MIT // @grant none // ==/UserScript== (function () { "use strict"; // default keywords list const negKeywords = ["cringe", "sucks", "boring", "hate", "trash"]; const posKeywords = [ "awesome", "love", "amazing", "incredible", "wholesome", "respect", ]; // load keywords from localStorage or use defaults const negativeKeywords = JSON.parse( localStorage.getItem("noNoiseNeg") || JSON.stringify(negKeywords) ); const positiveKeywords = JSON.parse( localStorage.getItem("noNoisePos") || JSON.stringify(posKeywords) ); // custom style for negative comments const NEGATIVE_STYLE = ` filter: blur(6px); transition: filter 0.3s ease-in-out; cursor: pointer; `; // custom style for positive comments const POSITIVE_STYLE = ` background-color: #d6f5d6; border-radius: 6px; padding: 4px 6px; display: inline-block; `; // function to handle comments const observer = new MutationObserver(() => handleComments()); observer.observe(document.body, { childList: true, subtree: true }); // main function to handle comments based on platform, which add negative and positive styles to comments function handleComments() { const selectors = { "www.youtube.com": "#content-text", "www.reddit.com": "div[data-testid='comment']", "www.instagram.com": "ul > div > li > div > div > div > span", }; const selector = selectors[location.hostname]; if (!selector) return; document .querySelectorAll(`${selector}:not(.no-noise-scanned)`) .forEach((comment) => { const text = comment.textContent.toLowerCase(); comment.classList.add("no-noise-scanned"); // Negative comments adding blur effect if (negativeKeywords.some((word) => text.includes(word))) { comment.setAttribute("style", NEGATIVE_STYLE); comment.title = "Click to reveal"; comment.addEventListener( "click", () => (comment.style.filter = "none"), { once: true } ); } // Positive comments adding highlight effect if (positiveKeywords.some((word) => text.includes(word))) { comment.setAttribute("style", POSITIVE_STYLE); comment.textContent = "🌟 " + comment.textContent.trim() + " 🌟"; } }); } // update keywords in localStorage window.NoNoise = { // for negative keywords setNeg: () => { const newNeg = prompt( "Enter negative keywords (comma separated):", negativeKeywords.join(",") ); if (newNeg) { const arr = newNeg.split(",").map((word) => word.trim().toLowerCase()); localStorage.setItem("noNoiseNeg", JSON.stringify(arr)); alert("Negative keywords updated!"); } }, // for positive keywords setPos: () => { const newPos = prompt( "Enter positive keywords (comma separated):", positiveKeywords.join(",") ); if (newPos) { const arr = newPos.split(",").map((word) => word.trim().toLowerCase()); localStorage.setItem("noNoisePos", JSON.stringify(arr)); alert("Positive keywords updated!"); } }, // reset all localStorage items and reload the page reset: () => { localStorage.removeItem("noNoiseNeg"); localStorage.removeItem("noNoisePos"); location.reload(); }, }; })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址