HTML自动播放视频,并从文件夹继续循环播放

时间:2019-07-13 21:08:53

标签: javascript php html css

我要运行文件夹中的所有视频,自动播放并连续重复播放。

我找到了一些javascript代码,它可以完美工作,但是必须将其包含在javascript代码列表中,有没有办法更改此代码以读取文件夹中的所有视频。

这是javascript代码:

<div class="main">  
    <video src="video\\video1.mp4" id="myvideo" width="100%" height="100%" controls autoplay poster="gambar\logo.png">
</video>

<script>
    var myvid = document.getElementById('myvideo');
var myvids = [
  "video\\video1.mp4", 
  "video\\video2.mp4",
  "video\\video3.mp4"
  ];
var activeVideo = 0;

myvid.addEventListener('ended', function(e) {
  // update the new active video index
  activeVideo = (++activeVideo) % myvids.length;

  // update the video source and play
  myvid.src = myvids[activeVideo];
  myvid.play();
});
</script>
</div>  

如果确实存在我也将接受它的另一种方式,也许使用数据库来读取文件或其他编码。请帮忙。

1 个答案:

答案 0 :(得分:0)

假设您使用的是PHP,

<?php
$directory='videos'; // Add your Directory here
$path    = './'.$directory.'/';
$allFiles = scandir($path,1);
$files = array_diff($allFiles, array('.', '..'));
print_r($files)
?>

<div class="main">  
    <video src="<?php echo 'videos/'.$files[0];?>" id="myvideo" width="100%" height="100%" controls autoplay  poster="gambar\logo.png">
</video>
<script type='text/javascript'>
  var directory = '<?php echo $directory;?>';
    var myvids = <?php echo json_encode($files); ?>;
    index=0;
    document.getElementById('myvideo').addEventListener('ended',myHandler,false);
    function myHandler(e) {
     index++;
       // For Repeating all video files 
       if(index>=myvids.length)
        index=0;

     var vid = document.getElementById("myvideo");
       vid.src = directory+'/'+myvids[index];
    }

</script>
</div>  

希望这对您有帮助!

相关问题