您需要先安装一个扩展,例如 篡改猴、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.9 // @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 marginBottom = 'margin-bottom: 1px !important;'; const bottom = 'bottom: 1% !important;'; let newCssCaption; // ` // #target { // margin-bottom: 1px !important; // bottom: 1% !important; // } // `; let styleTag; 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"); let caption = captionContainer.firstElementChild; console.log(caption); // 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); captionID = caption.getAttribute('id'); styleTag = document.createElement('style'); newCssCaption=''; styleTag.innerHTML = newCssCaption; document.head.appendChild(styleTag); console.log(styleTag); observerNodeAdded.disconnect(); } if (mutation.removedNodes.length===1){ // oberverCaptionStyle.disconnect(); // styleTag.parentNode.removeChild( theScript ); } } } } // 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 oberverCaptionStyle = new MutationObserver(captionStyleChanged); const observerNodeAdded = new MutationObserver(nodeAdded); observerNodeAdded.observe(captionContainer, configContainer); console.log("suc."); })();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址