跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

获取视频时长:JavaScript 实现方案

本文将介绍如何使用 JavaScript 从视频链接中提取视频时长。通过监听 `loadeddata` 事件,确保视频元数据加载完毕后,即可获取准确的时长信息。本文提供详细的代码示例,帮助开发者轻松实现视频时长的提取和展示。 使用 JavaScript 获取视频时长 在网页中展示视频时,有时需要获取视频的时长并显示给用户。由于视频的元数据(包括时长)需要一定时间加载,因此直接访问视频元素的 duration 属性可能无法立即获取到正确的值。正确的做法是监听视频元素的 loadeddata 事件,在该事件触发后,再获取视频时长。 HTML 结构 首先,需要在 HTML 中添加一个 video 标签,并指定视频的 src 属性。 立即学习 “ Java免费学习笔记(深入) ”;

视频时长


JavaScript 代码 接下来,使用 JavaScript 获取视频元素,并监听 loadeddata 事件。 Google Antigravity 谷歌推出的AI原生IDE,AI智能体协作开发 下载
let video = document.getElementById("myVideo"); video.addEventListener('loadeddata', function() { console.log("视频时长:", video.duration); // 在这里可以进行其他操作,例如将时长显示在页面上 }, false); function getVideoLength() { alert(video.duration); }
代码解释 document.getElementById("myVideo"): 获取 ID 为 "myVideo" 的视频元素。 video.addEventListener('loadeddata', function() { ... }, false);: 为视频元素添加一个事件监听器,监听 loadeddata 事件。当视频的元数据加载完毕后,该事件会被触发。 console.log("视频时长:", video.duration);: 在 loadeddata 事件处理函数中,使用 video.duration 获取视频时长,并输出到控制台。video.duration 的单位是秒。 getVideoLength(): 点击按钮时,弹窗显示视频时长。 完整示例
获取视频时长

视频时长


注意事项 确保视频链接是有效的,并且可以被 浏览器 访问。 loadeddata 事件只会在视频元数据加载完毕后触发一次。 video.duration 返回的是视频的总时长,单位为秒。如果需要显示为更友好的格式(例如 "分钟:秒"),需要进行格式化。 总结 通过监听 loadeddata 事件,可以确保在视频元数据加载完毕后获取视频时长。这是一种可靠的方法,可以避免因元数据未加载而导致获取时长失败的问题。希望本文能够帮助你成功获取视频时长并在你的项目中应用。

相关文章