您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
fix youtube caption position through changing the margin of the caption's bottom.
当前为
// ==UserScript== // @name fix youtube caption position // @namespace http://tampermonkey.net/ // @version 0.8 // @description fix youtube caption position through changing the margin of the caption's bottom. // @author You // @match *://*.youtube.com/watch?* // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; // Your code here... const captionStyle="touch-action: none; text-align: left; overflow: hidden; left: 1.2%; width: 420px; height: 38px; margin-bottom:1px;"; const captionContainer = document.querySelector("#ytp-caption-window-container"); const configContainer = {childList: true}; const configCaptionStyle = {attributeFilter: ["style"]}; function nodeAdded(mutationList){ for(const mutation of mutationList){ //console.log(mutation); if(mutation.type==="childList"){ if (mutation.addedNodes.length===1){ //console.log("caption appear~"); let caption = document.querySelector(".ytp-larger-tap-buttons .caption-window.ytp-caption-window-bottom"); //console.log(caption.getAttribute('style')); caption.setAttribute('style', captionStyle); //console.log(caption.getAttribute('id')); //console.log("attribute after setted"); //console.log(caption.getAttribute('style')); oberverCaptionStyle.observe(caption,configCaptionStyle); } if (mutation.removedNodes.length===1){ oberverCaptionStyle.disconnect(); } } } } function captionStyleChanged(mutationList){ for (const mutation of mutationList){ // console.log(mutation); let caption = document.querySelector(".ytp-larger-tap-buttons .caption-window.ytp-caption-window-bottom"); console.log(caption.getAttribute('style')); caption.setAttribute('style', captionStyle); console.log(caption.getAttribute('id')); console.log("attribute after setted"); console.log(caption.getAttribute('style')); } } const observerNodeAdded = new MutationObserver(nodeAdded); const oberverCaptionStyle = new MutationObserver(captionStyleChanged); observerNodeAdded.observe(captionContainer, configContainer); console.log("suc."); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址