Safari移动版 - youtube iframe api - 自动播放

时间:2018-02-03 20:54:42

标签: mobile youtube safari youtube-iframe-api autoplay

我尝试使用YouTube iframe API在Safari手机上自动播放Youtube视频。这是我的代码:

<div class="player-wrapper featured-small featured-medium featured-large featured-xlarge">
    <div id="player"></div>
</div>
<script>
      var tag = document.createElement('script');
      tag.src = "https://www.youtube.com/player_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

      var player;
      function onYouTubePlayerAPIReady() {
        player = new YT.Player('player', {
          playerVars: {
            'controls': 0,
            'showinfo': 0,
            'autoplay': 1,
            'loop': 1,
            'modestbranding': 1,
            'playlist': '<?php echo $scales_hero_video; ?>'
          },
          videoId: '<?php echo $scales_hero_video; ?>',
          events: {
            'onReady': onPlayerReady}
        });
      }

      function onPlayerReady(event) {
        event.target.mute();
        event.target.playVideo();
      }
</script>

先谢谢你们!

视频应该在静音时自动播放和循环播放。但该视频并没有开始在Safari手机中播放。

1 个答案:

答案 0 :(得分:1)

Apple不允许在iOS设备上使用基于WebKit的浏览器进行自动播放或脚本式播放,这可以防止通过蜂窝网络进行不必要的下载。

正如YouTube播放器API手册(https://developers.google.com/youtube/iframe_api_reference#Mobile_considerations)中所述:

  

移动注意事项

     

自动播放和脚本播放   在某些移动浏览器(例如Chrome和Safari)中,HTML5元素仅允许在用户交互(例如点击播放器)启动时进行播放。以下摘自Apple's documentation

     
    

“警告:为了防止用户通过蜂窝网络进行未经请求的下载,嵌入式媒体无法在iOS上的Safari中自动播放 - 用户始终会启动播放。”

  
     

由于此限制,自动播放,playVideo(),loadVideoById()等功能和参数将无法在所有移动环境中使用。

所以你想要什么,在Safari Mobile上自动播放视频是不可能的......

此致

Leon Hagendijk