当视频取消静音时,无法通过iFrame API播放YouTube视频
本教程将介绍当视频取消静音时,无法通过iFrame API播放YouTube视频的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。
问题描述
自从Chrome更新到版本72后,我在YouTube iframe API上运行的自定义播放器停止工作。它仍然可以在Firefox或Chrome<;=71上完美运行。
使用下面的代码,当函数play()被触发时,视频开始缓冲,然后停止,不播放。
function onYouTubeIframeAPIReady() {
ytIframe = $("#player")[0];
ytPlayer = new YT.Player(ytIframe, {
events: {
'onReady': () => {},
'onStateChange': () => {}
}
});
}
function play() {
ytPlayer.playVideo();
}
使其工作的唯一方法是使用iframe src上的mute=1
url参数嵌入视频。但是,即使我这样做了,如果我尝试在播放视频之后取消静音播放器(使用ytPlayer.unMute()
),视频仍会再次停止。
关于这个Chrome72更新有什么变化有什么想法吗?这是YouTube/Chrome错误还是预期行为?
谢谢!
推荐答案
"player.play()"在最新版本的Chrome上不起作用,我们可以通过向父iFrame添加Allow="Autoplay"属性来解决此问题
要了解根本原因,可以查看:"发生了什么变化?"@https://developers.google.com/web/updates/2019/01/user-activation
好了关于当视频取消静音时,无法通过iFrame API播放YouTube视频的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。