获取嵌入式iframe youtube播放器的当前时间?

时间:2014-07-09 06:46:29

标签: javascript jquery youtube-api youtube-javascript-api

我在此尝试如下:

HTML

<iframe id="player" style="position: relative; height: 220px; width: 400px" src="http://www.youtube.com/embed/7a_CVFRqYv4?rel=0&amp;enablejsapi=1"></iframe>

脚本

var player;
function onYouTubePlayerAPIReady() {player = new YT.Player('player');}

这里我想要这样的动作,比如当玩家时间达到6秒时,我想改变iframe的src。

3 个答案:

答案 0 :(得分:2)

此主题介绍如何使用YouTube API Getting Current YouTube Video Time

获取视频的当前播放时间

然后可以使用setInterval()每秒运行以检查API中getCurrentTime()的值,如果value = 6则将src设置为新视频。

答案 1 :(得分:0)

这应该通过setInterval()解决,而不是setTimeout()

使用最新的youtube iFrame API:

var player;
var checkInt; // save this as a var in this scope so we can clear it later
function onYouTubePlayerAPIReady() {
   player = new YT.Player('player');
   startInterval()
}

function startInterval() {
   //checks every 100ms to see if the video has reached 6s
   checkInt = setInterval(function() {
      if (player.getCurrentTime() > 6) {
         changeSrc();
         clearInterval(checkInt);
      };
   }, 100)
}

function changeSrc() {
   player.loadVideoById(xxxxx);
}

答案 2 :(得分:-1)

在视频开始播放时调用以下功能

function StartVideo(){
setTimeout("ChangeLinkUrl()", 6000);
}

function ChangeLinkUrl(){
var elem = document.getElementById('YourFrameID');
 elem.src = "newSorceURL";
}