Javascript:获取视频时长

问题描述

我想通过javascript获取视频的时长,此代码不起作用

<video id="myVideo">
     <source src="">
</video>
<script>
var vid = document.getElementById("myVideo");
alert(vid.duration);
</script>

解决方法

您需要等待文件的元数据加载:

var vid = document.getElementById("myVideo");
vid.addEventListener('loadedmetadata',function() {
     console.log(vid.duration);
});