我有下面的代码工作正常我只需要改变它所以当视频结束它播放另一个可以有人请告诉我如何做到这一点我没有线索。
添
<script>
// create youtube player
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: '4L5g2kN9oUU',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
// autoplay video
function onPlayerReady(event) {
event.target.playVideo();
}
// when video ends
function onPlayerStateChange(event) {
if(event.data === 0) {
alert('done');
}
}
</script>
答案 0 :(得分:0)
新答案 第一个视频完成后,它将检查bool是否为false,它会将其设置为true并将youtube播放器设置为新的videoId,之后它将执行youtube播放器的播放功能。
你必须更改secondvideoId才能播放另一个视频,它不会重播第一个视频,所以不要忘记。
var firstVId = '4L5g2kN9oUU';
var secondVId = '4L5g2kN9oUU';
var bPlayedSecondTime = false;
// create youtube player
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: firstVId,
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
// autoplay video
function onPlayerReady(event) {
event.target.playVideo();
}
// when video ends
function onPlayerStateChange(event) {
if(event.data === 0) {
alert('done');
if(bPlayedSecondTime == false)
{
player.loadVideoById(secondVId);
bPlayedSecondTime = true;
event.target.playVideo();
}
}
}
<script>
答案 1 :(得分:0)
您是否尝试使用新实例重新声明player
?
// when video ends
function onPlayerStateChange(event) {
if(event.data === 0) {
alert('done');
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: '[next video ID]',
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
}