您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Replace the old boring flat background with whatever picture you like
当前为
// ==UserScript== // @name Custom Image for Youtube Background // @namespace http://tampermonkey.net/ // @version 0.1 // @description Replace the old boring flat background with whatever picture you like // @author Hoover // @match *://*.youtube.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=youtube.com // @grant none // @license MIT // ==/UserScript== (function () { 'use strict'; // Fill the array up with URLs to pictures const bgSources = [ "https://i.kym-cdn.com/photos/images/original/000/581/296/c09.jpg", "https://i.kym-cdn.com/photos/images/original/000/581/296/c09.jpg" ] function getRandomImageUrl(images) { const randomIndex = Math.floor(Math.random() * images.length); return images[randomIndex]; } // Select only one image from the array let bgImage = getRandomImageUrl(bgSources); function applyBackground() { var primaryElement = document.getElementById('content'); if (primaryElement) { primaryElement.style.backgroundImage = `url(${bgImage})`; primaryElement.style.backgroundAttachment = 'fixed'; primaryElement.style.backgroundSize = 'cover'; primaryElement.style.backgroundRepeat = 'no-repeat'; primaryElement.style.backgroundPosition = 'center'; } } // Function to add transparency to some divs function applyTransparency(divName) { var divElem = document.getElementById(divName); if (divElem) { divElem.style.opacity = 0.9; } } // Repackaged for quick calling function applyTransparentElems() { applyTransparency('guide'); applyTransparency('chips-wrapper'); } // Function to remove elements by class name function removeElementsByID(id) { var element = document.getElementById(id); if (element) { element.parentNode.removeChild(element); } } // Must remove cinematic container (the glowing effect when video plays) removeElementsByID('cinematics-container'); applyTransparentElems(); // Check for the element every 500ms until it is found var checkExist = setInterval(function () { if (document.getElementById('content')) { applyBackground(); clearInterval(checkExist); removeElementsByID('cinematics-container'); } }, 500); // Additionally, listen for page changes and reapply the background var observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { if (mutation.addedNodes.length) { applyBackground(); applyTransparentElems() removeElementsByID('cinematics-container'); } }); }); observer.observe(document.body, { childList: true, subtree: true }); })();