Vimeo jQuery事件回调

时间:2013-01-06 02:03:57

标签: jquery callback vimeo

我正在尝试让我的Vimeo Embedded播放器在视频播放时调用一个功能。我无法调用回调函数....

$.getJSON('http://www.vimeo.com/api/oembed.json?url=' + encodeURIComponent('http://vimeo.com/7100569') + '&width=513&height=287&callback=?', function(data) {
    $('#mediaplayerHolder').html(data.html);
    $('iframe').each(function() {
        $f(this).addEvent('ready', function(player_id) {
            $f(player_id).addEvent('finish', function() {
                alert("finish");    
            });
        });
    });
});

1 个答案:

答案 0 :(得分:2)

我想通了......对于其他有同样问题的人来说,这是因为有几件事情。

1)我没有

api=1

在JSON字符串中。

2)我需要JSON字符串和iframe中的ID。

我把它全部用于调用视频的功能:

function playVideo(ID,autoPlay,playNext) {
    $('#mediaplayerHolder').find("iframe").remove();

    $.getJSON('http://www.vimeo.com/api/oembed.json?url=' + encodeURIComponent('http://vimeo.com/' + ID) + '&title=0&byline=0&portrait=0&autoplay=' + autoPlay + '&width=513&height=287&api=1&player_id=mediaplayer&callback=?', function(data) {
        $(data.html).attr("ID","mediaplayer").appendTo('#mediaplayerHolder');

        var iframe = $("iframe")[0],
            player = $f(iframe);

        player.addEvent("ready", function() {
            player.addEvent("finish",function() {
                if (playNext) {
                    $(".occupied:not(#" + ID + "):first").find(".playBtn").click();
                    $("#" + ID).find(".removeBtn").click(); 
                }
            });
        });
    }); 
}