您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Picture in Picture mode for puhutv
// ==UserScript== // @name puhutv Picture in Picture // @name:tr puhutv Picture in Picture // @namespace puhutvPiP // @version 1.3.1 // @description Picture in Picture mode for puhutv // @description:tr puhutv için Picture in Picture modu // @author Runterya // @homepage https://github.com/Runteryaa // @match https://puhutv.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=puhutv.com // @grant none // @license MIT // @compatible chrome // @compatible edge // @compatible opera // @compatible safari // ==/UserScript== console.log("puhutvPiP"); // Wait for the page to load window.addEventListener('load', () => { // Add a delay of 2 seconds before adding the button setTimeout(() => { // Find the video player element (you may need to adjust the selector) const vid = document.querySelector('#dyg-player-new-player_html5_api'); // Find the target div element const targetDiv = document.querySelector('[title="Tam Ekran"]') || document.querySelector('.vjs-fullscreen-control'); // Add the Picture-in-Picture button just before the target div const pipBtn = document.createElement('button'); pipBtn.id = 'pip-btn'; pipBtn.className = 'vjs-icon-picture-in-picture-enter vjs-control vjs-button'; pipBtn.style.fontSize = '26px'; pipBtn.style.width = '40px'; pipBtn.style.height = '30px'; pipBtn.style.color = '#828282'; pipBtn.style.cursor = 'pointer'; // Append the button directly to the document body document.body.appendChild(pipBtn); // Insert the container just before the target div targetDiv.parentNode.insertBefore(pipBtn, targetDiv); // Function to toggle Picture-in-Picture mode // Function to toggle Picture-in-Picture mode const togglePiP = () => { const vid = document.querySelector('#dyg-player-new-player_html5_api'); // Check if the browser supports requestPictureInPicture if ('pictureInPictureEnabled' in document && document.pictureInPictureEnabled) { if (document.pictureInPictureElement === vid) { document.exitPictureInPicture(); } else { // Request Picture-in-Picture mode vid.requestPictureInPicture() .then(() => { console.log('Entered Picture-in-Picture mode.'); }) .catch((error) => { console.error('Error entering Picture-in-Picture mode:', error); }); } } else { // Alert the user that Picture-in-Picture is not supported alert('Your browser does not support Picture-in-Picture mode.'); } }; // On click of the PiP button, toggle Picture-in-Picture mode pipBtn.addEventListener('click', togglePiP); // On click of the PiP button, toggle Picture-in-Picture mode pipBtn.addEventListener('click', togglePiP); }, 3000); });