जवाबों:
वर्तमान में, ऐसा करने के लिए कोई उपचार / समाधान नहीं है। मैन्युअल रूप से उन्हें एक-एक करके ब्लॉक करने के अलावा, कोई स्केलेबल समाधान नहीं हैं।
लेकिन ऐसे एक्सटेंशन हैं जो ऐसा कर सकते हैं:
// ==UserScript==
// @version 1.1.1
// @name Hide watched videos on YouTube
// @namespace https://gist.github.com/xPaw/6324624
// @match https://www.youtube.com/*
// @updateURL https://gist.github.com/xPaw/6324624/raw/YoutubeHideWatched.user.js
// @downloadURL https://gist.github.com/xPaw/6324624/raw/YoutubeHideWatched.user.js
// @grant none
// ==/UserScript==
const app = document.querySelector( 'ytd-app' );
function HideVideos( a )
{
app.querySelectorAll( 'ytd-thumbnail-overlay-resume-playback-renderer:not([data-hidden="true"])' ).forEach( element =>
{
element.dataset.hidden = true;
while( ( element = element.parentNode ).tagName.toLowerCase() !== 'ytd-item-section-renderer' )
{
// Find the container element for this video
}
element.hidden = true;
} );
}
function ProcessPage()
{
if( !window.location.pathname.startsWith( '/feed/subscriptions' ) )
{
return;
}
const list = app.querySelector( 'ytd-section-list-renderer' );
if( list.dataset.hooked )
{
return;
}
list.dataset.hooked = true;
list.addEventListener( 'yt-next-continuation-data-updated', HideVideos );
// TODO: Find an event to fix this
new MutationObserver( HideVideos ).observe( list, { childList: true, subtree: true } );
}
app.addEventListener( 'yt-navigate-finish', ProcessPage );
ProcessPage();
AFAIK, YouTube पर स्वयं ऐसा करने का कोई तरीका नहीं है, लेकिन मैं Chrome एक्सटेंशन ( YouTube के लिए बेहतर सब्सक्रिप्शन ) का उपयोग करता हूं जिससे आप अपने सब्सक्रिप्शन टैब से देखे गए वीडियो छिपा सकते हैं।
display: none
किसी भी<ytd-compact-video-renderer>
तत्व को सेट करना चाहते हैं जिसमें एक बाल तत्व होता है#progress
। आप सीएसएस में ऐसा नहीं कर पाएंगे, लेकिन एक टेम्परॉन्की स्क्रिप्ट काफी सरल होनी चाहिए। मैं बाद में जाऊंगा और एक उत्तर लिखूंगा ...