在播放时更改 YouTube 视频的音量

Pet*_*Pam 8 javascript youtube-api

当我播放 YouTube 视频时,如下所示:

https://www.youtube.com/tv?#/watch/video/control?v=d1-VK12FZhs&resume&t=0m4s

我需要更改注入 javascript 的体积。

我知道API有这个功能

player.setVolume(volume:Number):Void
Run Code Online (Sandbox Code Playgroud)

当我用它来获取当前时间时:

document.querySelector('.video-stream').getCurrentTime();
Run Code Online (Sandbox Code Playgroud)

我尝试过

document.querySelector('.video-stream').setVolume(20);
Run Code Online (Sandbox Code Playgroud)

但我收到一条错误消息“setVolume 不是函数”

如何使用它来改变视频播放的音量?

提前致谢

小智 6

尝试这样的事情:

var vid = document.querySelector('.video-stream');
vid.volume = 0.1; // where 0 - no volume and 1 - 100% of volume. So 0.1 is 10% of volume. It works for me.
Run Code Online (Sandbox Code Playgroud)


Eli*_*iiO 5

Dead Sky的解决方案有效,但在直播中,几秒钟后音量会回落到之前的值(通过移动滑块或按快捷键设置)。所以我尝试了以下组合:

document.querySelector(".html5-video-player").setVolume(50);
Run Code Online (Sandbox Code Playgroud)

现在音量不会回落,并且也与播放器界面(滑块值)同步。


小智 1

我假设您正在查看此处列出的示例:

他们使用 iFrame 来控制视频。您将无法使用 querySelector 直接访问该对象,因为它不是 DOM 原生的。您需要按照他们的文档正确使用他们的 API。