为了实现在指定的时间点播放列表中的视频,你可以使用JavaScript中的setTimeout或setInterval结合HTML5的<video>元素。但是,由于你需要处理多个时间点,并且每个时间点播放不同的视频,使用setTimeout会更直接一些,因为你可以为每个时间点设置一个独立的定时器。 以下是一个基本的实现思路: 定义一个视频列表,包含视频URL和播放时间点。 遍历这个列表,为每个时间点设置setTimeout。 当定时器触发时,检查当前页面上是否有正在播放的视频,如果有,则先暂停或停止它。 加载并播放指定时间点的视频。 这里是一个简单的示例代码: html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Scheduled Video Player</title> </head> <body> <video id="videoPlayer" width="320" height="240" controls></video> <script> // 视频列表,包含URL和播放时间点(秒) const videoSchedule = [ { url: 'video1.mp4', time: 5 }, { url: 'video2.mp4', time: 15 }, { url: 'video3.mp4', time: 30 } ]; let currentVideo = null; // 当前播放的视频 // 初始化视频播放器 const videoPlayer = document.getElementById('videoPlayer'); // 播放指定视频 function playVideo(url) { if (currentVideo) { currentVideo.pause(); // 如果有正在播放的视频,先暂停 currentVideo.src = ''; // 清空视频源 } videoPlayer.src = url; // 设置新的视频源 videoPlayer.play(); // 播放新视频 currentVideo = videoPlayer; // 更新当前播放的视频 } // 遍历视频列表,设置定时器 videoSchedule.forEach(video => { setTimeout(() => { playVideo(video.url); }, video.time * 1000); // 将秒转换为毫秒 }); </script> </body> </html> 注意: 示例中的video1.mp4、video2.mp4和video3.mp4需要替换为实际的视频文件URL。 videoPlayer.src = ''; 这行代码用于清空视频源,这样可以确保当新视频开始播放时,旧的视频内容不会残留在播放器中。但这种方法在某些浏览器中可能不是必需的或可能不起作用,具体取决于浏览器的实现。 示例中使用了controls属性在<video>标签中,这样用户就可以手动控制视频的播放。如果你不需要这些控件,可以移除controls属性。 请确保你的网页有权访问这些视频文件,特别是如果它们托管在不同的域上,你可能需要处理跨域资源共享(CORS)问题。
标签:视频,url,videoPlayer,JS,currentVideo,mp4,播放列表,播放 From: https://www.cnblogs.com/wgscd/p/18307750