大家好,作为SO网站的用户,我开始开发一个音乐档案网站,用户可以分享YouTube视频(仅限于音乐类)。
我想添加一个系统,使得这些视频可以自动播放,前一首结束后会自动切换到下一首视频。
以下代码可以用来自动播放一组视频,这将只使用一个播放器而非播放器列表。伪代码中,我想创建的系统将按照以下方式排列:
播放器1,视频1
播放器2,视频2
播放器3,视频3
播放器4,视频4
<div id="player1"></div>
<div id="player2"></div>
<script>
var tag = document.createElement('script');
tag.src = "//www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player1;
var player2;
function onYouTubeIframeAPIReady() {
player1 = new YT.Player('player1', {
height: '350',
width: '425',
videoId: 'uO7kCUjUaUE',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
player2 = new YT.Player('player2', {
height: '350',
width: '425',
videoId: 'Bt9tTEZjYG8'
});
}
function onPlayerReady(event) {
event.target.playVideo();
}
function onPlayerStateChange(event) {
if (event.data == YT.PlayerState.ENDED) {
player2.playVideo();
}
}
</script>
现有的话题:http://goo.gl/5neM6Z(脚本源代码)涉及到这个问题,但是没有回答OP提出的扩展想法,包括当一个视频播放时,所有其他视频都会暂停的想法。
我的问题是,是否有一种简单的方法修改这个代码来实现这一点,还是必须编写新的脚本?这个系统在其他地方存在吗?JWPlayer可能是解决方案吗?
非常感谢对这个话题的讨论和建议!