我有一个处理页面上拖放文件的功能:
function createDropHandlers() {
var target = document;
if (target === null) {
return false;
}
// attach the 'dragover' event to the container
target.addEventListener('dragover', function(event) {
event.preventDefault();
}, true);
// attach the 'drop' event to the container
target.addEventListener('drop', function(event) {
event.preventDefault();
var files = event.dataTransfer.files;
// if (files.length > 3)
// do something like
// files.slice(files.length-3, files.length);
for (var i = 0; i < files.length; i++) {
processFile(files[i]);
// ...
}
}, true);
}
我想做的是在我的for
循环之前(以及在以任何方式“处理”文件之前)检查是否拖动了 3 个以上的文件,如果是这样,只需将“数组”切片为最后 3 个元素。我知道这FileList
是只读的,所以我不确定我在这里有什么选择来实现这一点......
我不会上传文件,并且在“处理”它们之后,我将不需要File
任何对象。我需要做的就是检查文件是否是音频文件,从中读取一些元数据并在页面上显示元数据。