自动播放html5视频,而另一视频仅播放一次

时间:2018-07-16 11:38:15

标签: javascript html5 video

我很确定这是一个简单的问题,但是我不知道该怎么做。

$(".options .option1").click(function() {
    var video = $("#video1").get(0);
    video.play();
    return false;
});

$('#video1').bind('ended', function () { 
$('.option-profesional').addClass('open');
setTimeout(function(){
    var video = $("#video2").get(0);
    video.play();
    return false;
}, 4250);

});

这:

$(".options .option2").click(function() {
    var video = $("#video2").get(0);
    video.play();
    return false;
});

$('#video2').bind('ended', function () { 
$('.option-personal').addClass('open');
setTimeout(function(){
    var video = $("#video1").get(0);
    video.play();
    return false;
}, 4250);

});

所以...我通过单击一个按钮来开始播放“个人或专业”视频。当此视频结束时,开始播放第二个视频,反之亦然。基本上是气泡。
我正在寻找的是制止这种气泡。因此,当您已经看过第一个节目时,就不要在第二个节目结束时开始播放。

对于假人,因为我很难解释这一点:

我想要什么:

  

video1> video2> END(通过显示文字或其他内容。)

     

video2> video1> END(通过显示文字或其他内容。)

我的代码当前正在做什么:

  

video2> video1> video2> video1> video2> video1 ...,反之亦然。

谢谢!

1 个答案:

答案 0 :(得分:0)

自从您使用jQuery检查视频是否以绑定结束(结束)后,如何制作一个Flag,在video2完成后,将flag更改为true并将视频播放脚本包装在if语句中。这样,您可以显示一条消息或执行您喜欢的任何事情。对条件2重复上述步骤,在video1结束时将video2> video1>设为true,然后将其包装在if语句中,然后进行比较。这有帮助吗?

是这样的:

video_status = false;

if (video_status == false) {

  $(".options .option1").click(function() {
      var video = $("#personal").get(0);
      video.play();
      return false;
  });

  $('#video1').bind('ended', function () { 
  $('.option-profesional').addClass('open');
  setTimeout(function(){
      var video = $("#profesional").get(0);
      video.play();
      video_status = true; // < This condition should end this run. On refresh or reload the condition resets to false and repeats.
      return false;
  }, 4250);

  });

}