您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
New Unvale Theme
// ==UserScript== // @name Unvale Full Neon Green + Complete Theme + QOTD Fix // @namespace unvale.io // @version 2025-09-04 // @description New Unvale Theme // @author You // @match https://unvale.io/* // @icon https://www.google.com/s2/favicons?sz=64&domain=unvale.io // @run-at document-idle // @license MIT // ==/UserScript== (function() { 'use strict'; /*** 1️⃣ Apply global styles ***/ function applyGlobalStyles() { const globals = [document.documentElement, document.body, ...document.querySelectorAll('.page-profile, .bg-linear-to-t, .dark\\:bg-linear-to-t, .bg-brandingBlue-900, .bg-brandingBlue-925, .bg-brandingBlue-950, .dark\\:bg-brandingBlue-900, .dark\\:bg-brandingBlue-925, .dark\\:bg-brandingBlue-950')]; globals.forEach(el => { el.style.background = '#1A1A1A'; el.style.backgroundImage = 'none'; el.style.color = '#E0E0E0'; }); // Panels/cards/boxes document.querySelectorAll('.panel, .card, .box, .shadow-xl, .rounded-xl').forEach(el => { el.style.background = '#242424'; el.style.border = '1px solid #333333'; el.style.color = '#E0E0E0'; el.style.boxShadow = '0 2px 6px rgba(0,0,0,0.5)'; }); // Navbar/footer document.querySelectorAll('#header-nav, .header-nav, nav, footer').forEach(el => { el.style.background = '#282828'; el.style.borderBottom = '1px solid #333333'; el.style.color = '#E0E0E0'; }); // Inputs document.querySelectorAll('input, textarea, select').forEach(el => { el.style.background = '#2A2A2A'; el.style.color = '#E0E0E0'; el.style.border = '1px solid #444'; el.style.borderRadius = '8px'; }); // Links document.querySelectorAll('a, .link').forEach(el => { el.style.color = '#39FF14'; el.addEventListener('mouseenter', () => el.style.color = '#00FF00'); el.addEventListener('mouseleave', () => el.style.color = '#39FF14'); }); // Headings document.querySelectorAll('h1,h2,h3,h4,h5,h6').forEach(el => el.style.color = '#F5F5F5'); // Accent text document.querySelectorAll('strong, .highlight, .font-bold, .text-brandingPurple-500, .dark\\:text-brandingPurple-400, .hover\\:text-brandingPurple-400').forEach(el => { el.style.color = '#39FF14'; }); // Override Tailwind text-white in buttons document.querySelectorAll('button *, .btn *, .nav-button *').forEach(el => el.style.color = '#121212'); } /*** 2️⃣ Buttons Neon Green + Glow ***/ function forceNeonGreen(el) { if (!el) return; function styleElement(elem) { elem.style.background = '#39FF14'; elem.style.backgroundImage = 'none'; elem.style.border = '1px solid #00FF00'; elem.style.borderRadius = '9999px'; elem.style.color = '#121212'; elem.style.fontWeight = '600'; elem.style.textAlign = 'center'; elem.style.boxShadow = '0 0 8px #39FF14'; Array.from(elem.children).forEach(child => styleElement(child)); } styleElement(el); } function fixButtons() { const buttons = document.querySelectorAll( 'a.button.button-purple, button[data-testid="explore-button"], button[title="Mark all as read"], button, .btn, .nav-button, .switch-toggle' ); buttons.forEach(btn => forceNeonGreen(btn)); document.querySelectorAll('nav a.button, nav .button, nav .nav-button').forEach(btn => { btn.style.color = '#121212'; btn.style.fontWeight = '600'; btn.style.textShadow = '0 0 4px #39FF14'; btn.addEventListener('mouseenter', () => btn.style.textShadow = '0 0 8px #39FF14'); btn.addEventListener('mouseleave', () => btn.style.textShadow = '0 0 4px #39FF14'); }); } /*** 3️⃣ Style QOTD Box + Text ***/ function styleQOTDBox() { const div = document.querySelector('div.absolute.inset-0.z-0.opacity-30'); if (!div) { return; } div.style.backgroundImage = 'none'; div.style.backgroundColor = '#39FF14'; div.style.backgroundPosition = 'center top'; div.style.backgroundSize = 'cover'; div.style.backgroundRepeat = 'no-repeat'; div.style.opacity = '0.25'; div.style.boxShadow = '0 0 30px 10px #39FF14'; div.style.borderRadius = '12px'; div.style.transition = 'box-shadow 1s ease-in-out'; const parentBox = div.closest('.qotd-box') || div.parentElement; if (parentBox) { parentBox.style.color = '#121212'; // dark text parentBox.style.fontWeight = '600'; parentBox.style.textShadow = 'none'; } } function pulseGlow() { const div = document.querySelector('div.absolute.inset-0.z-0.opacity-30'); if (!div) return; let growing = true; setInterval(() => { const current = parseFloat(div.style.opacity) || 0.25; if (growing) { div.style.opacity = Math.min(current + 0.005, 0.35); if (current >= 0.35) growing = false; } else { div.style.opacity = Math.max(current - 0.005, 0.25); if (current <= 0.25) growing = true; } }, 50); } /*** 4️⃣ Fix QOTD Gradient Text ***/ function fixQOTDText() { document.querySelectorAll('span.animate-[gradientText_20s_ease_infinite].bg-clip-text.text-transparent').forEach(span => { span.style.backgroundImage = 'none'; span.style.color = '#121212'; // black/dark text span.style.backgroundClip = 'unset'; span.style.webkitBackgroundClip = 'unset'; }); } /*** 5️⃣ Style icons and badges ***/ function styleIconsAndText() { document.querySelectorAll('svg, .icon, .fa, .material-icons, i').forEach(icon => { icon.style.fill = '#39FF14'; icon.style.color = '#39FF14'; }); document.querySelectorAll('.badge, .notification-count, .icon-badge').forEach(b => { b.style.background = '#39FF14'; b.style.color = '#121212'; b.style.borderRadius = '9999px'; b.style.fontWeight = '600'; b.style.border = '1px solid #00FF00'; b.style.boxShadow = '0 0 8px #39FF14'; }); } /*** 6️⃣ Initial run ***/ setTimeout(() => { applyGlobalStyles(); fixButtons(); styleQOTDBox(); pulseGlow(); fixQOTDText(); styleIconsAndText(); }, 500); /*** 7️⃣ Watch for dynamic changes ***/ const observer = new MutationObserver(() => setTimeout(() => { applyGlobalStyles(); fixButtons(); styleQOTDBox(); fixQOTDText(); styleIconsAndText(); }, 100)); observer.observe(document.body, { childList: true, subtree: true }); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址