您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
So Pictures A Many! ... Shh, it's a perfect acronym. This script will hide a comment when it contains more than 3 images / embeds, with the option to show it anyway. With 6 images or more, it gets deleted.
当前为
// ==UserScript== // @name SPAM // @version 3.6 // @description So Pictures A Many! ... Shh, it's a perfect acronym. This script will hide a comment when it contains more than 3 images / embeds, with the option to show it anyway. With 6 images or more, it gets deleted. // @author Valognir (https://www.deviantart.com/valognir) // @namespace https://gf.qytechs.cn/en/scripts/417286-spam // @run-at document-start // @match *://*.deviantart.com/* // @exclude *://*.deviantart.com/*realEstateId* // ==/UserScript== (function() { 'use strict'; // looking to change the numbers or somethin? here you go. // number of images / embeds within a comment before its content... // ...gets hidden, with the option to show it anyway. let hides = 3; // ...gets deleted. let yeets = 10; // that's all, better don't touch the stuff below. let css = ` .yeeted { display: flex; flex-wrap: wrap; } .heya, .toggle { text-align: center; opacity: .6; font-size: 12px; } .heya { font-family: "Comic Sans MS"; flex-grow: 1; } .toggle { width: 45px; color: var(--g-typography-primary); border: 1px solid currentColor; background: none; font-weight: bold; } .toggle:hover { color: var(--C14); } .toggle + div { height: 0; } .heya i { font-style: italic; } `; function waitForBody() { if (document.body) { const styleNode = document.createElement('style'); const headElement = document.head; console.log("[SPAM]", headElement); styleNode.appendChild(document.createTextNode(css)); headElement.appendChild(styleNode); const observer = new MutationObserver(function(mutations) { const comments = document.querySelectorAll('div[data-commentid] .ds-surface-secondary>div:last-child:not(.yeeted)'); comments.forEach(function (element){ console.log(element); const imgs = element.querySelectorAll('div[data-editor-viewer] img[srcset]'); if (imgs.length >= yeets) { element.classList.add('yeeted'); element.innerHTML = '<span class="heya">spam identified.<br>yeet!</span>'; } else if (imgs.length >= hides) { element.classList.add('yeeted'); element.insertAdjacentHTML('afterbegin', '<span class="heya more">can\'t <i>picture</i> what\'s in here. wanna check?</span><button class="toggle">Yes</button>'); } }); const toggleButtons = document.querySelectorAll('.heya+.toggle'); if (toggleButtons.length > 0) { toggleButtons.forEach(function(element) { if (!element.classList.contains('click')) { element.classList.add('click'); element.addEventListener('click', function () { if (element.nextElementSibling.style.height !== 'auto') { element.nextElementSibling.style.height = 'auto'; element.previousElementSibling.innerHTML = 'huh, so that\'s what\'s in here. wanna hide it again?'; } else { element.nextElementSibling.style.height = '0px'; element.previousElementSibling.innerHTML = 'can\'t <i>picture</i> what\'s in here. wanna check?'; } }); } }); } }); observer.observe(document, { childList: true, subtree: true }); console.log("[SPAM] Loading screen added."); } else { setTimeout(waitForBody, 100); // Retry after 100ms console.log("[SPAM] Body not found. Retrying."); } } waitForBody(); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址