因此,我决定从小规模开始,一次只学习一个Javascript或Greasemonkey,这是不够雄心勃勃或效率不够的。所以我决定做一个改变Youtube工作方式的Greasemonkey脚本。
我将从问题开始,我非常确定它不是,我确实启用了HTML5播放器,并且我仔细检查了我在Youtube API中调用的函数的名称。我也非常确定我正确地安装了Greasemonkey,并且脚本加载正确,因为当Youtube页面打开时,"YoutubeSpeed.user.js“文件会出现在Greasemonkey上下文菜单中,旁边会有一个复选标记,而且我尝试安装了一个简单得多的Greasemonkey脚本(http://www.wired.com/wired/archive/webmonkey/greasemonkey/helloworld.user.js),它工作得很好。如果不是很明显,我基本上是试图让Youtube在打开视频后立即做一堆事情。(具体来说,让它暂停,将速度设置为2x,将质量设置为720p,并确保音量为100。
我认为问题要么是因为我使用了Youtube API,要么是因为我使用了Javascipt语法,或者是因为我使用了Greasemonkey语法。我真的认为这些都是未来的有用工具,所以如果能有一点帮助来学习它们,我们将不胜感激。此外,任何其他想法,以改善一般的Youtube体验,以添加到这个脚本,也将受到赞赏。
编辑:啊,好像是输入错误了。我的意思绝对是包括我的脚本,因为它很短,我希望你们能帮助我。这就是它所有的荣耀。
// ==UserScript==
// @name YoutubeSpeed
// @namespace matt47721@yahoo.com
// @description Double The Speed Of Youtube Videos By Default
// @include https://www.youtube.com/*
function onPlayerReady() {
target.player.pauseVideo();
target.player.setPlaybackRate(2);
target.player.setPlaybackQuality(hd720);
target.player.unMute();
target.player.setVolume(volume:100);
};
// @grant none
// ==/UserScript==至于MCVE,对于M来说,我一直无法让任何涉及Youtube视频的Greasemonkey脚本工作。至于C,我的整个脚本都在那里。至于V,我想我可以描述得更好一点,我道歉。当我打开一个Youtube视频时,它并没有做我想用这个脚本完成的任何事情,它只是正常播放。既然问题是关于如何让我的Greasemonkey脚本在Youtube上工作,而我放入的唯一代码是Greasemonkey脚本,这应该会影响Youtube,我想说我已经删除了与问题无关的东西。
我希望这是令人满意的,我为之前做得这么差而道歉,这是我第一次使用StackOverflow。
干杯,伊莉丁
发布于 2016-03-06 14:46:24
您的脚本引用了一个变量"target.player“,但您尚未将该变量链接到youtube页面上的播放器。您首先需要使用以下命令查找播放器:
var videoElement = document.getElementsByTagName("video")[0];这为您提供了视频播放器的句柄,只有这样,您才能使用API操作播放器。可以在这里找到一个完整的、有效的脚本:https://github.com/mirnhoj/video-element-playbackrate-setter/
https://stackoverflow.com/questions/32127204
复制相似问题