Disable Youtube PiP Miniplayer

Prevents Youtube from keep playing videos in PiP/miniplayer

目前為 2024-04-30 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Disable Youtube PiP Miniplayer
// @namespace    disableMPYTxFIRKx
// @description  Prevents Youtube from keep playing videos in PiP/miniplayer
// @version      0.71
// @author       xFIRKx
// @match        http://*.youtube.com/*
// @match        https://*.youtube.com/*
// @homepageURL  https://gf.qytechs.cn/it/scripts/493793-disable-youtube-pip-miniplayer
// @grant        none
// ==/UserScript==

(function() {
    // Remove miniplayer and its button when page navigation finishes
    document.body.addEventListener("yt-navigate-finish", function(event) {
        removeMiniplayer();
    });

    function removeMiniplayer() {
        let miniplayer = document.querySelector('ytd-miniplayer');
        if (miniplayer) {
            miniplayer.parentNode.removeChild(miniplayer);
        }

        let miniplayerButton = document.querySelector('.ytp-miniplayer-button');
        if (miniplayerButton) {
            miniplayerButton.parentNode.removeChild(miniplayerButton);
        }
    }

    // Pause and reset video/audio element when navigating to the miniplayer
    window.onload = () => {
        let bodyList = document.querySelector('body');
        let observer = new MutationObserver(mutationsList => {
            mutationsList.forEach(mutation => {
                if (mutation.target.id === 'player-theater-container' && mutation.type === 'childList') {
                    // Pause and reset video/audio element
                    let videoElement = document.querySelector('#movie_player video');
                    if (videoElement) {
                        videoElement.pause();
                        videoElement.currentTime = 0;
                    }

                    let audioElement = document.querySelector('audio');
                    if (audioElement) {
                        audioElement.pause();
                        audioElement.currentTime = 0;
                    }
                }
            });
        });
        observer.observe(bodyList, { childList: true, subtree: true });
    };

    // Disable miniplayer play/pause button click functionality
    document.addEventListener('click', function(event) {
        if (event.target.closest('.ytp-miniplayer-button')) {
            event.preventDefault(); // Prevent default click action
            event.stopPropagation(); // Stop event propagation
            console.log('Play/Pause functionality disabled on miniplayer');
        }
    }, true);

    // Disable miniplayer play/pause keyboard shortcut functionality
    document.addEventListener('keydown', function(event) {
        let miniplayer = document.querySelector('ytd-miniplayer');
        if (miniplayer && (event.code === 'Space' || event.code === 'ArrowRight' || event.code === 'ArrowLeft')) {
            event.preventDefault(); // Prevent default keyboard shortcut action
            event.stopPropagation(); // Stop event propagation
            console.log('Keyboard shortcut disabled for miniplayer');
        }
    });

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址