循环播放视频并在每次播放后刷新

时间:2016-03-22 13:00:38

标签: javascript php html loops

我想在彼此后面播放多个视频。但是,我希望每次视频结束时页面都会刷新。

我该怎么做?

现在我有了这个:

<script>
    video_count =1;
    videoPlayer = document.getElementById("homevideo");

    function run(){
            video_count++;
            if (video_count == 6) video_count = 1;
            var nextVideo = "Videos/demo/"+video_count+".mp4";
            videoPlayer.src = nextVideo;
            videoPlayer.play();
       };
</script>

并且

<video id="homevideo" width="100%" autoplay onended="run()">
    <source src="Videos/demo/1.mp4" type='video/mp4'/>
</video>

现在这个工作了(下一个视频在第一个完成后开始。) 但是我不知道如何构建自动刷新。无需再次从第一个视频开始。

修改

它可以用php吗?

这就是我现在所做的:

<?php
$videos=array("Videos/treinen/1.mp4",
    "Videos/Demo/1.mp4",
    "Videos/Demo1/2.mp4",
    "Videos/Demo/2.mp4",
    "Videos/Demo1/3.mp4",
    "Videos/Demo/3.mp4",
    "Videos/Demo1/4.mp4",
    "Videos/Demo/4.mp4",
    "Videos/Demo1/5.mp4",
    "Videos/Demo/5.mp4",
    "Videos/Demo1/6.mp4"); 
echo $videos[0] . $videos[1] . $videos[2] . $videos[3] . $videos[4] . $videos[5] . $videos[6] . $videos[7] . $videos[8] . $videos[9];
?>

是否可行

<div class="embed-responsive embed-responsive-16by9">
    <iframe class="embed-responsive-item" src="<?php echo $videos; ?>"></iframe>
</div>

这当然没有用,但我希望你们能得到我的想法。 (我通过会话存储它。我因为引导而使用iframe。)

2 个答案:

答案 0 :(得分:0)

您必须存储video_count某处,因为刷新video_count后也会刷新。

您的选择很少:

  1. 在会话中存储
  2. 存储在Cookie中
  3. 存储在数据库中(使用Ajax)
  4. 会话示例:

    你可以使用这个插件快速完成它:https://github.com/AlexChittock/JQuery-Session-Plugin

    设置会话:

    $.session.set("userName", $("#uname").val());
    

    获取会话:

    $.session.get('userName');
    

答案 1 :(得分:0)

这个问题有很多解决方案。如果您想坚持使用重定向解决方案,可以使用网络存储或cookie。

function run(){
    if(typeof(Storage) !== "undefined") {
        var video_count = localStorage.getItem("video_count");
        if (video_count === null) {
            video_count = 1;
        }
        //play video
        video_count++;
        //set new video count
        localStorage.setItem("video_count", video_count);
        //redirect
    }
};

更好的解决方案是使用ajax返回一个带有数据的新json来刷新页面上的内容,而不是使用重定向。

function run(){
    //play next video without refreshing
    $.ajax({
        url: "data.php",
        success: function(response){
            //refresh data on page
            $('#content').html(response);
        }
    })
};