YouTube Safari iOS PiP Block Unblocker

Unblocks the block of Picture-in-Picture mode for m.youtube.com on Safari iOS. Works as of 2025-01-31.

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         YouTube Safari iOS PiP Block Unblocker
// @version      1.0
// @description  Unblocks the block of Picture-in-Picture mode for m.youtube.com on Safari iOS. Works as of 2025-01-31.
// @author       ILoveYouTube
// @match        https://m.youtube.com/*
// @grant        none
// @license      MIT
// @namespace https://greasyfork.org/users/1429466
// ==/UserScript==

(function() {
    'use strict';

    // iOS Safari needs a user interaction first before we can modify video elements
    document.addEventListener('touchstart', function initOnTouch() {
        let v = document.querySelector('video');
        if (v) {
            v.addEventListener('webkitpresentationmodechanged', (e)=>e.stopPropagation(), true);
            // Remove the touchstart listener after we've initialized
            document.removeEventListener('touchstart', initOnTouch);
        }
    }, true);
})();