youtube api上的getDuration()不是函数吗?

时间:2012-06-25 16:56:02

标签: javascript youtube-api

我一直在我的网站上实现youtube API,例如playVideo()工作正常,所以我猜这个实现没什么问题..但是getDuration()得到一个错误(不是这样的函数)误差)

这就是我尝试这样做的方式:

function GetDuration() {
    var duration;
    if (ytplayer) {
        duration = ytplayer.getDuration();
    }
    $(".optionVideo").append("<p>" + duration + "</p>")
}

它的错误是没有这样的功能。 谁能知道我做错了什么?

jsFiddle:http://jsfiddle.net/V36cL/6/

1 个答案:

答案 0 :(得分:4)

您需要从GetDuration致电onYouTubePlayerReady,而不是$(document).ready。在 DOM之后,YouTube视频可能已准备好

此外,您的onYouTubePlayerReady函数需要是全局的(jsFiddle将其包装在匿名函数中)。

window.onYouTubePlayerReady = function(playerId) {
    window.ytplayer = document.getElementById("ytPlayer");
    GetDuration();
}

演示:http://jsfiddle.net/V36cL/7/