Youtube API设置当前时间

时间:2014-05-14 10:24:32

标签: javascript html youtube youtube-api

我目前正在使用You-Tube API进行我的项目。 我使用它的方式如下:

var tag = document.createElement('script');
    tag.src = "https://www.youtube.com/iframe_api";
    var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

// 3. This function creates an <iframe> (and YouTube player)
//    after the API code downloads.
var player;
var alternatePlayer;
function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
        height: '390',
        width: '640',
        videoId: 'M7lc1UVf-VE',
        events: {
            'onReady': onPlayerReady
        }
    });

}

// 4. The API will call this function when the video player is ready.
function onPlayerReady(event) {
    event.target.playVideo();
}

一切运作良好,但对于我的项目,我需要能够控制视频播放的当前时间。 我搜索了You-Tube API注释和数据,但找不到参数,也找不到能够设置视频当前时间的函数(当前时间有GET而不是一组)。 在youtube创建中提到的参数startseconds(我的意思是参数height,width,videoId附近)可以控制视频的第二个起点。这不符合我的需要,因为我需要更改SAME视频的当前时间而不加载另一个。有没有办法解决?我错过了这套功能吗?我必须使用startseconds回忆相同的videoId吗? 非常感谢您对此事的任何启示。


编辑: 好的,我以一种奇怪的方式找到了解决方案。由于某种原因,我在You-Tube API上没有看到它。

player.seekTo(55,true); 

此代码会将you-tube播放器更改为55秒,这是当前时间的SET。 谢谢大家的时间。

1 个答案:

答案 0 :(得分:8)

查看以下文件:

首先,您需要对Player对象的JS引用。如需快速入门,请查看以下问题:

使用此参考,您可以:

player.seekTo(42); //Go to 42 seconds