您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Allows zooming in/out for YouTube videos; use ctrl+up/down
// ==UserScript== // @name Youtube Zoomer // @namespace http://tampermonkey.net/ // @version 0.1 // @description Allows zooming in/out for YouTube videos; use ctrl+up/down // @author k4rli // @match *://*.youtube.com/* // @grant none // ==/UserScript== (function () { 'use strict'; class ZoomHandler { currentZoom = 1.0; static ZOOM = { IN: 'IN', OUT: 'OUT', }; updateVideoZoom = () => { const video = document.querySelector('video'); const properties = [ 'transform', '-ms-transform', '-o-transform', '-webkit-transform', '-moz-transform', ]; properties.forEach((prop) => video.style .setProperty(prop, `scale(${this.currentZoom})`) ); } zoom = (option) => { const prevZoom = this.currentZoom; switch (option) { case ZoomHandler.ZOOM.IN: this.currentZoom += 0.1; break; case ZoomHandler.ZOOM.OUT: this.currentZoom -= 0.1; break; default: break; } if (this.currentZoom < 0.1 || this.currentZoom > 10.0) { this.currentZoom = prevZoom; } else { this.updateVideoZoom(); } } } const zoomHandlerInstance = new ZoomHandler(); window.addEventListener('keydown', ({ ctrlKey, keyCode }) => { if (ctrlKey) { switch (keyCode) { case 38: // arrow up zoomHandlerInstance.zoom(ZoomHandler.ZOOM.IN); break; case 40: // arrow down zoomHandlerInstance.zoom(ZoomHandler.ZOOM.OUT); break; default: break; } } }); })();