当视频取消静音时,无法通过iFrame API播放YouTube视频

Can#39;t play YouTube video through iframe API when video is unmute(当视频取消静音时,无法通过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=1url参数嵌入视频。但是,即使我这样做了,如果我尝试在播放视频之后取消静音播放器(使用ytPlayer.unMute()),视频仍会再次停止。

关于这个Chrome72更新有什么变化有什么想法吗?这是YouTube/Chrome错误还是预期行为?

谢谢!

推荐答案

"player.play()"在最新版本的Chrome上不起作用,我们可以通过向父iFrame添加Allow="Autoplay"属性来解决此问题

要了解根本原因,可以查看:"发生了什么变化?"@https://developers.google.com/web/updates/2019/01/user-activation

这篇关于当视频取消静音时,无法通过iFrame API播放YouTube视频的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:当视频取消静音时,无法通过iFrame API播放YouTube视频

基础教程推荐