您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a pop out to PIP button below the video. Works on mobile, tablet (m.youtube.com) and on desktop.
当前为
- // ==UserScript==
- // @name YouTube.com add PIP picture in picture pop-out button (Mobile / Desktop)
- // @namespace m-youtube-com-pip-button
- // @version 1.3
- // @description Adds a pop out to PIP button below the video. Works on mobile, tablet (m.youtube.com) and on desktop.
- // @author hlorand.hu
- // @match https://m.youtube.com/*
- // @match https://youtube.com/*
- // @match https://*.youtube.com/*
- // @icon https://www.google.com/s2/favicons?sz=64&domain=tampermonkey.net
- // @grant none
- // @license https://creativecommons.org/licenses/by-nc-sa/4.0/
- // ==/UserScript==
- (function() {
- //'use strict';
- function addbutton(){
- document.getElementById("pipbutton").innerText = "";
- let button = document.createElement('button');
- button.textContent = "PIP";
- button.className = "pipbutton";
- button.style.margin = "4px";
- button.style.padding = "6px";
- button.style.backgroundColor = "brown";
- button.style.position = "relative";
- button.onclick = function() {
- let video = document.querySelector("video");
- video.requestPictureInPicture();
- };
- let target = document.getElementById("pipbutton");
- target.insertBefore(button, target.firstChild);
- } // end addbuttons
- // Periodically check if the buttons are visible
- // (sometimes YouTube redraws its interface).
- setInterval(()=>{
- // Creating a div that will contain buttons.
- if( document.getElementById("pipbutton") == undefined ){
- // placement of buttons on desktop
- let parent = document.getElementById('above-the-fold');
- // placement of buttons on tablet
- if( !parent ){
- parent = document.querySelector('.watch-below-the-player');
- }
- // placement of buttons on mobile
- if( !parent ){
- parent = document.querySelector('.related-chips-slot-wrapper');
- }
- let wrapper = document.createElement('div');
- wrapper.setAttribute("id","pipbutton");
- parent.insertBefore(wrapper, parent.firstChild);
- addbutton();
- }
- // Sometimes the buttons are not added, so I check and add them if necessary.
- if( document.getElementById("qualitybuttons").textContent.trim() === '' ){
- addbuttons();
- }
- }, 1000);
- })();