You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新手求助:如何用JS/HTML5仅加载视频的20秒-30秒时间段内容

嘿,作为HTML5和JS新手能想到用seek已经超棒啦!完全可以通过JS实现只加载并播放视频的00:20到00:30时间段,我给你准备了纯JS和jQuery两种方案,一步步来:

纯JavaScript实现方案

这种方案不需要依赖任何库,原生JS就能搞定,核心思路是先跳转到目标起始时间,再监听播放进度,到达结束时间就暂停:

<video id="myVideo" width="320" height="240">
  <source src="movie.mp4" type="video/mp4">
  Your browser does not support the video tag.
</video>

<script>
const video = document.getElementById('myVideo');

// 等视频元数据加载完成(必须这一步,否则没法正确设置播放时间)
video.addEventListener('loadedmetadata', () => {
  // 直接跳转到20秒的位置
  video.currentTime = 20;
  
  // 开始播放
  video.play();
});

// 实时监听播放时间,到达30秒就暂停
video.addEventListener('timeupdate', () => {
  if (video.currentTime >= 30) {
    video.pause();
    // 如果想彻底停止加载,可以把视频源清空(后续要播放得重新设置src)
    // video.src = '';
  }
});
</script>

小说明

  • loadedmetadata事件确保视频的时长、分辨率等元数据已经加载完成,这时候设置currentTime才会生效
  • timeupdate事件会在播放时间变化时触发,我们用它来检查是否到达了30秒的结束点
jQuery实现方案

如果你习惯用jQuery,逻辑和纯JS完全一致,只是语法上换成jQuery的写法:

<video id="myVideo" width="320" height="240">
  <source src="movie.mp4" type="video/mp4">
  Your browser does not support the video tag.
</video>

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(() => {
  const $video = $('#myVideo');
  
  // 监听元数据加载完成事件
  $video.on('loadedmetadata', () => {
    // jQuery对象要访问原生DOM元素才能用currentTime这些属性
    $video[0].currentTime = 20;
    $video[0].play();
  });
  
  // 监听播放时间更新
  $video.on('timeupdate', () => {
    if ($video[0].currentTime >= 30) {
      $video[0].pause();
      // $video[0].src = '';
    }
  });
});
</script>
进阶小技巧(可选)

如果你的服务器支持HTTP Range请求,还可以直接在视频URL里指定时间范围,这样浏览器只会加载该时间段的内容,更高效:

<video width="320" height="240">
  <source src="movie.mp4#t=20,30" type="video/mp4">
  Your browser does not support the video tag.
</video>

不过这个方法依赖服务器配置,兼容性也不如JS控制稳定,作为新手先掌握前面两种JS方案更稳妥~

刚开始处理视频相关内容不用着急,多试试这些代码,有问题再调整就好!

内容的提问来源于stack exchange,提问作者Abdelhamied Mostafa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:47:05