您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Control Embedded YT iFrames with postMessage
- // ==UserScript==
- // @name YT Embed Control Message Receiver
- // @namespace salembeats
- // @version 1.2
- // @description Control Embedded YT iFrames with postMessage
- // @author Cuyler Stuwe (salembeats)
- // @include https://www.youtube.com/embed/*
- // @grant none
- // ==/UserScript==
- function showOverlay() {
- let overlayDiv = document.createElement("DIV");
- overlayDiv.style.position = "fixed";
- overlayDiv.style.left = "50%";
- overlayDiv.style.transform = "translateX(-50%)";
- overlayDiv.style.top = "0px";
- overlayDiv.style.zIndex = Number.MAX_SAFE_INTEGER;
- overlayDiv.style.backgroundColor = "black";
- overlayDiv.style.color = "white";
- overlayDiv.style.pointerEvents = "none";
- overlayDiv.innerText = "Cuyler's YT Embed Control Message Receiver";
- document.body.insertAdjacentElement('afterend', overlayDiv);
- }
- function playAtDoubleSpeed() {
- let settingsButton = document.querySelector(".ytp-settings-button");
- settingsButton.click();
- document.querySelectorAll(".ytp-menuitem-content").forEach( function(el) {
- if( el.textContent.includes("Normal") ) {
- el.click();
- return;
- }
- });
- document.querySelectorAll(".ytp-menuitem-label").forEach( function(el) {
- if( el.textContent.includes("2") ) {
- el.click();
- return;
- }
- });
- }
- (function main() {
- showOverlay();
- playAtDoubleSpeed();
- e = window;
- while (e.frameElement !== null) {e = e.parent;}
- e.parent.focus();
- })();