您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Hides videos marked "Members-Only" from main landing page.
// ==UserScript== // @name Hide Members-Only Videos on Youtube // @namespace https://gf.qytechs.cn/en/users/4612-gdorn // @version 1.4 // @description Hides videos marked "Members-Only" from main landing page. // @author GDorn // @match https://www.youtube.com/* // @grant none // @license GPL-3.0 // ==/UserScript== const ITEM_SELECTOR = 'ytd-rich-item-renderer'; (function() { 'use strict'; function hideMembersOnlyElements() { document.querySelectorAll(ITEM_SELECTOR).forEach(maybeHide); } function maybeHide(item) { if (item.style.display == 'none') return; if (item.textContent.includes('Members only') || item.textContent.includes('Members first')) { console.log("Hiding item:", item); item.style.display = 'none'; } else { //console.log("Not hiding item:", item); } } function runWhenReady() { if (document.readyState === 'complete' || document.readyState === 'interactive') { hideMembersOnlyElements(); } else { setTimeout(runWhenReady, 500); } } runWhenReady(); const observer = new MutationObserver(mutations => { for (const { addedNodes } of mutations) { for (const node of addedNodes) { if (!(node instanceof HTMLElement)) continue; if (node.matches(ITEM_SELECTOR)){ maybeHide(node); } else { node.querySelectorAll && node.querySelectorAll(ITEM_SELECTOR).forEach(maybeHide); } } } }).observe(document.body, { childList: true, subtree: true }); window.addEventListener('yt-navigate-finish', hideMembersOnlyElements); var oldHref = document.location.href; var observer2 = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { if (oldHref != document.location.href) { oldHref = document.location.href; console.log('location changed!'); runWhenReady(); hideMembersOnlyElements(); setTimeout(hideMembersOnlyElements, 5000); // one last one, just in case things load very slowly } }); }); let attemptCount = 0; const maxAttempts = 10; const intervalCheck = setInterval(() => { if (attemptCount >= maxAttempts) { clearInterval(intervalCheck); return; } hideMembersOnlyElements(); attemptCount++; }, 1000); hideMembersOnlyElements(); setTimeout(hideMembersOnlyElements, 5000); // one last one, just in case things load very slowly })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址