您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greys out seen videos in the YouTube watch next sidebar, subscriptions page and elsewhere. Original: https://greasyfork.org/en/scripts/381500-youtube-grey-out-seen-videos
// ==UserScript== // @name [Fixed Sept 2025] YouTube Grey-out Seen Videos (Fixed 2025) // @namespace https://jacobbundgaard.dk // @version 1.3 // @description Greys out seen videos in the YouTube watch next sidebar, subscriptions page and elsewhere. Original: https://greasyfork.org/en/scripts/381500-youtube-grey-out-seen-videos // @match https://www.youtube.com/* // @grant none // @license MIT // ==/UserScript== (function() { function markWatchedVideos() { const classicSegments = document.querySelectorAll( ".ytThumbnailOverlayProgressBarHostWatchedProgressBarSegment[style*='width: 100%']" ); const resumeSegments = document.querySelectorAll( "ytd-thumbnail-overlay-resume-playback-renderer #progress[style*='width: 100%']" ); const allSegments = [...classicSegments, ...resumeSegments]; allSegments.forEach(segment => { const thumbnail = segment.closest( "ytd-thumbnail, a, ytd-rich-item-renderer, ytd-compact-video-renderer" ); if (thumbnail && thumbnail.style.opacity !== "0.2") { thumbnail.style.opacity = "0.2"; console.log("✔ Marked as watched:", thumbnail); } }); } // Run once at start markWatchedVideos(); // Observe for dynamically loaded videos const observer = new MutationObserver(markWatchedVideos); observer.observe(document.body, { childList: true, subtree: true }); })();