我正在用HTML和Javascript做一个项目,它将使用本地文件运行本地.我需要通过输入选择一个文件,获取它的信息然后决定我是否会添加到我的列表中并重现.如果我决定使用它,我将不得不把它放在队列中以便以后使用.否则我只会丢弃并选择另一个文件.
我面临的问题是,我无法通过在输入上选择它来找到获得vídeo持续时间的方法.
我搜索了很多,但没有找到任何方法来获得持续时间.在下面的代码中,我尝试使用' file.duration '但不起作用,它只返回' undefined '.
这是我的意见,你可以看到正常.
<div id="input-upload-file" class="box-shadow">
<span>upload! (?????)</span> <!--ignore the text face lol -->
<input type="file" class="upload" id="fileUp" name="fileUpload" onchange="setFileInfo()">
</div>
Run Code Online (Sandbox Code Playgroud)
这就是我用来获取所有信息的功能.
function setFileInfo(){
showInfo(); //change div content
var file = document.getElementById("fileUp").files[0];
var pid = 1;
var Pname = file.name;
Pname = Pname.slice(0, Pname.indexOf(".")); //get filename without extension
var Ptype = file.type;
var Psize = bytesToSize(file.size); //turns into KB,MB, etc...
var Pprior = setPriority(Ptype); //returns 1, 2 or 3
var Pdur = file.duration;
var Pmem …Run Code Online (Sandbox Code Playgroud) 有没有办法检查用户上传的视频文件的长度?
试过 duration,但这似乎只适用于已在DOM中引用的托管视频.