循环选项在youtube js api中不起作用

hel*_*con 4 javascript youtube api loops

我想知道为什么我的代码不播放视频循环.除了循环选项外,一切正常.我真的需要它.非常感谢.

<script src="jsapi.js"></script>
<script src="swfobject.js"></script>
<div id="ytapiplayer">You need Flash player 8+ and JavaScript enabled to view this video.</div>
<script type="text/javascript">
    google.load("swfobject", "2.1");
    function onYouTubePlayerReady(playerId) {
        ytplayer = document.getElementById("myytplayer");
        ytplayer.playVideo();
        ytplayer.mute();
    // I've tried it, just to.. try hehe  ytplayer.setLoop(true);
    }
    var params = { allowScriptAccess: "always" };
    var atts = { id: "myytplayer" };
    swfobject.embedSWF("http://www.youtube.com/v/RLOQCqGKVt8?autoplay=1&loop=1&enablejsapi=1&playerapiid=ytplayer&allowFullScreen=true&version=3&controls=0&showinfo=0&autohide=1&rel=0",
    "ytapiplayer", "100%", "100%", "8", null, null, params, atts);
</script>
Run Code Online (Sandbox Code Playgroud)

小智 14

解决方案是在'playerVars'对象中添加'播放列表'属性.像这样的循环工作,也适用于单个视频.

function onYouTubeIframeAPIReady() {
    player = new YT.Player('player', {
        height: '100%',
        width: '100%',
        playerVars : {
                  'autoplay' : 1,
                  'rel' : 0,
                  'showinfo' : 0,
                  'showsearch' : 0,
                  'controls' : 0,
                  'loop' : 1,
                  'enablejsapi' : 1,
                  'playlist': 'your-single-video-ID'
                },
        videoId: 'your-single-video-ID',
        events: {
            'onReady': onPlayerReady
            }
       });
}
Run Code Online (Sandbox Code Playgroud)

  • 虽然这是一个很好的解决方案,但它循环时会有明显的0.5秒左右的间隙.有什么方法吗? (4认同)