NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name VK.COM Video PiP // @description Картинка в картинке у видео на vk.com (only Safari) // @namespace http://tampermonkey.net/ // @version 0.1 // @author Flyink13 // @copyright 2018, flyink13 (https://openuserjs.org/users/flyink13) // @license MIT // @match https://vk.com/* // @grant none // ==/UserScript== (function() { 'use strict'; window.addEventListener("mousedown", function onMouseDown() { // Отслеживаем нажатия мышкой // Получаем нужные элементы (Видео и контекстное меню видео) var videoContextMenu = document.querySelector('.videoplayer_context_menu'); var video = document.querySelector('.videoplayer_media_provider'); // Проверяем поддерживает ли PiP видео и браузер и не добавили ли мы уже кнопку if (!videoContextMenu || videoContextMenu.pip || !video || typeof video.webkitSetPresentationMode !== "function") return; // Добавляем кнопку перехода в режим PiP var pipButton = document.createElement('div'); pipButton.className = '_item'; pipButton.textContent = 'Картинка в картинке'; pipButton.addEventListener('click', function onClickPiP() { // по умолчанию PiP var mode = "picture-in-picture"; // Если уже в нем, то делаем обратно if (video.webkitPresentationMode == mode) mode = "inline"; // Переключаем режим video.webkitSetPresentationMode(mode); }); // Добавляем кнопку перехода в PiP и запоминаем videoContextMenu.appendChild(pipButton); videoContextMenu.pip = true; }); })();