延迟YouTube自动播放20秒

时间:2015-03-11 18:58:40

标签: html youtube-api

是否可以延迟iframe嵌入式YouTube播放器的自动播放?

这是我的嵌入代码:

<iframe width="560" height="315" src="https://www.youtube.com/embed/iejOAPyooXs?wmode=transparent&autoplay=1" frameborder="0" allowfullscreen></iframe>

3 个答案:

答案 0 :(得分:2)

使用youtube播放器API更新了我对更好的选项和动态输出的答案。它有很多选项可供选择,您可以使用Javascript轻松控制它。我希望这可以有所帮助。 @wasikuss的积分贴出了答案。

  // Load the IFrame Player API code asynchronously.
    setTimeout(function() {
        player.playVideo();
    }, 20000);
      var tag = document.createElement('script');
      tag.src = "https://www.youtube.com/player_api";
      var firstScriptTag = document.getElementsByTagName('script')[0];
      firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

  // Replace the 'ytplayer' element with an <iframe> and
  // YouTube player after the API code downloads.
    var player;
    function onYouTubePlayerAPIReady() {    
        player = new YT.Player('ytplayer', {
          height: '315',
          width: '560',
          videoId: 'iejOAPyooXs'
        }); 
    }

参考https://developers.google.com/youtube/player_parameters

答案 1 :(得分:1)

您可以使用JavaScript来促进延迟。最初只在页面上显示视频的缩略图。在JavaScript中,等待20秒,然后将视频iframe替换为预览。

此其他帖子介绍了如何仅显示缩略图:Youtube Video Thumbnail with Youtube API

答案 2 :(得分:0)

Sildoreth的解决方案有一个陷阱:用户无法自己播放视频。 更合适的解决方案是使用YouTube IFrame API(https://developers.google.com/youtube/iframe_api_reference)。 20秒后,只需检查视频状态(player.getPlayerState()),如果是video cued5),请致电player.playVideo()

JSFiddle