为了账号安全,请及时绑定邮箱和手机立即绑定

js获取本地视频时间长度

js获取本地视频时间长度

人到中年有点甜 2018-07-18 13:26:51
js如何获取file控件中选择的视频文件的时长,播放时间长度,不需要通过服务器。
查看完整描述

1 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

 <style>#v{width:400px;height:300px}</style>
<video id="v" controls></video><br />
<input type="file" onchange="setVideoSrc(this)" />
<script>
    function getDuration() {
        if (!isNaN(v.duration)) {
            clearInterval(timer);
            alert(v.duration)
        }
        else {
            tryTime++;
            //超过获取视频长度最大重试次数
            if (tryTime >= maxTry) { clearInterval(timer); alert('无法获取视频长度!');}
        }
    }
    var timer,tryTime,maxTry=5,delay=500;
    function setVideoSrc(f) {
        clearInterval(timer);
        var url = URL.createObjectURL(f.files[0]);
        v.src = url;
        tryTime = 0;
        timer = setInterval(getDuration, delay);//直接获取不到duration,会NaN,计时器来获取
    }
</script>


查看完整回答
2 反对 回复 2018-08-01
  • 1 回答
  • 1 关注
  • 5105 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信