在youtube javascript API中阻止后续自动播放

时间:2014-07-19 15:06:28

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

我在fancybox中加载并播放YouTube视频。这一切都很完美,除非我关闭fancybox再次启动视频。

var player;
function onYouTubePlayerAPIReady() {
    player = new YT.Player('player', {
        height: '480',
        width: '853',
        videoId: 'I76i-TCaUCY',
        events: {
            'onReady': onPlayerReady,
            'onStateChange': onPlayerStateChange
        }
    });
}

// autoplay video
function onPlayerReady(event) {
    event.target.playVideo();

}

// when video ends
function onPlayerStateChange(event) {
    if (event.data === 0) {
        $.fancybox.close();
    }
}

如果需要,用户应该可以再次播放,所以我无法将其删除。

我如何才第一次玩它?

1 个答案:

答案 0 :(得分:1)

我不知道是否有更简单的方法,但这就是我根据自己的需要修复它的方法:

我添加了var played = false和:

// autoplay video
function onPlayerReady(event) {
    //This ensures that it is autoplayed only once.
    if (!played) {
        event.target.playVideo();
        played = true;
    }
}

它现在可以正常运作。