fun.autoblow.com Video CSS Modifier

Modifies CSS of video elements, setting object-fit to 'contain' which automatically fits videos in the player and fullscreen mode.

K instalaci tototo skriptu si budete muset nainstalovat rozšíření jako Tampermonkey, Greasemonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Userscripts.

You will need to install an extension such as Tampermonkey to install this script.

K instalaci tohoto skriptu si budete muset nainstalovat manažer uživatelských skriptů.

(Už mám manažer uživatelských skriptů, nechte mě ho nainstalovat!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(Už mám manažer uživatelských stylů, nechte mě ho nainstalovat!)

// ==UserScript==
// @name         fun.autoblow.com Video CSS Modifier
// @version      1.1
// @description  Modifies CSS of video elements, setting object-fit to 'contain' which automatically fits videos in the player and fullscreen mode. 
// @match        https://fun.autoblow.com/*
// @grant        none
// @namespace https://greasyfork.org/users/1371886
// ==/UserScript==

(function() {
    'use strict';

    // Function to modify the CSS
    function modifyVideoCSS(videoElement) {
        if (videoElement) {
            // Get the parent element of the video
            const parentElement = videoElement.parentElement;

            if (parentElement) {
                // Set object-fit to contain in the CSS
                parentElement.style.objectFit = 'contain';
                videoElement.style.objectFit = 'contain';

                console.log('Video CSS updated successfully');
            } else {
                console.log('Video parent element not found');
            }
        }
    }

    // Function to check for video element
    function checkForVideo() {
        const videoElement = document.querySelector('video');
        if (videoElement) {
            modifyVideoCSS(videoElement);
        }
    }

    // Set up a MutationObserver to watch for changes in the DOM
    const observer = new MutationObserver((mutations) => {
        mutations.forEach((mutation) => {
            if (mutation.addedNodes.length) {
                checkForVideo();
            }
        });
    });

    // Start observing the document with the configured parameters
    observer.observe(document.body, { childList: true, subtree: true });

    // Run the check immediately in case the video is already present
    checkForVideo();

    // Add event listener for possible video source changes
    document.addEventListener('loadeddata', (event) => {
        if (event.target.tagName.toLowerCase() === 'video') {
            modifyVideoCSS(event.target);
        }
    }, true);
})();