常用JS工具函数-判断视频的时长

文章介绍了如何通过JavaScript创建一个Video标签来获取视频时长,并封装成独立函数videoDurationJudgment,处理了预加载、错误加载和中断的情况。同时提及了相关工具如节流和防抖以及前端导出PDF的链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

📐 实现原理

  • 通过创建一个Video标签,然后获取时长

🚄 实现

  • 考虑到后面这个东西会常用,因此我这里通过封装成独立一个JS文件。
  • 文件名称:videoDurationJudgment.js

✨方法封装✨



function videoDurationJudgment(file, maxDuration) {
      return new Promise((resolve, reject) => {
        const video = document.createElement('video');
        video.preload = 'metadata';
        video.src = URL.createObjectURL(file);
        video.onloadedmetadata = () => {
          URL.revokeObjectURL(video.src);
          console.log('视频时长:', video.duration);
          resolve(video.duration < maxDuration);
          video.remove(); // 销毁video元素
        };
        video.onerror = () => {
          reject(new Error('视频加载出错'));
          video.remove(); // 销毁video元素
        };
        video.onabort = () => {
          reject(new Error('视频加载中断'));
          video.remove(); // 销毁video元素
        };
      });
    },
export default videoDurationJudgment

推荐阅读
常用JS工具函数-节流
常用JS工具函数-防抖
Vue实现前端导出PDF文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值