问题
I'm wondering why my code doesn't play the loop for the video. Everything is working except the loop option. And I really need it. Thanks a lot.
<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>
回答1:
The solution is to adding in the 'playerVars' object, the 'playlist' attributes. Like this loop works, also for single video.
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
}
});
}
来源:https://stackoverflow.com/questions/19795034/loop-option-doesnt-work-in-the-youtube-js-api