Làm cách nào để ngăn YouTube hiển thị các video đã xem?


12

Có cách nào để ngăn YouTube hiển thị các video đã xem trong danh sách các video được đề xuất không?


1
Nhìn lướt qua HTML khiến tôi nghĩ rằng nó không quá khó để làm. Về cơ bản, bạn muốn đặt display: nonetrên bất kỳ <ytd-compact-video-renderer>phần tử nào có chứa phần tử con #progress. Bạn sẽ không thể làm điều đó trong CSS, nhưng tập lệnh Tampermonkey phải đủ đơn giản. Tôi sẽ đi sau và viết câu trả lời ...
Aaron F

Câu trả lời:


12

Hiện tại, không có điều trị / giải pháp để làm như vậy. Ngoài việc tự tay chặn chúng từng cái một, không có giải pháp mở rộng.

0

Nhưng có những phần mở rộng có thể làm như vậy:


// ==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();

3
Thật là xấu hổ. Tôi đang nhận được cùng một tá video âm nhạc mọi lúc nhưng hoàn toàn chặn chúng là quá mức cần thiết.
JollyJoker

1
oh tốt đẹp, bạn đã cập nhật với một usercript! :-)
Aaron F

Một số không hoạt động, nhưng đây là những gì tôi đang tìm kiếm. Tks
DGaleano

4

AFAIK, không có cách nào để làm điều này trên chính YouTube, nhưng tôi sử dụng tiện ích mở rộng Chrome ( Đăng ký tốt hơn cho YouTube ) cho phép bạn ẩn video đã xem khỏi tab đăng ký của mình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.