您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
A simple as possible script to automatically change video quality to 720p (or higher if you want).
// ==UserScript== // @name Youtube 720p // @namespace sevanteri // @description A simple as possible script to automatically change video quality to 720p (or higher if you want). // @version 1.1 // @grant none // @include *.youtube.com* // ==/UserScript== // Author: https://keybase.io/sevanteri // Date: 2015-07-15 // License: GNU General Public License v3 (GPL) // contentEval (http://wiki.greasespot.net/Content_Script_Injection) (function (source) { // Check for function input. if ('function' == typeof source) { // Execute this function with no arguments, by adding parentheses. // One set around the function, required for valid syntax, and a // second empty set calls the surrounded function. source = '(' + source + ')();' } // Create a script node holding this source code. var script = document.createElement('script'); script.setAttribute('type', 'application/javascript'); script.textContent = source; // Insert the script node into the page, so it will run, and immediately // remove it to clean up. document.body.appendChild(script); document.body.removeChild(script); }) (function () { // wanted quality var quality = 'hd720'; // get player id var yt = window.ytplayer; if (!yt) return; var yt = yt.config.attrs.id; var w = window; var d = document; var t = null; // player element var p = null; var origReady = w.onYouTubePlayerReady || function () {}; var setQ = function (q) { if (p.getPlaybackQuality() != q) { p.setPlaybackQuality(q); } } w.onYouTubePlayerReady = function () { p = d.getElementById(yt); if (p) { p.addEventListener('onStateChange', function (e) { //console.log(e); // When unstarted (-1) and buffering (3). // Unstarted was sent only for the first video, so buffering // state seemed like a good choice for other videos in the // playlist. if (e == - 1 || e == 3) { clearTimeout(t); setQ(quality); } }); } origReady(); }; t = setTimeout(function () { p = d.getElementById(yt); setQ(quality); }, 200); });