我试图在任何类型的上传之前立即从多个文件中获取exif数据。我正在使用:
https://github.com/sanisoft/jQuery-fileExif
var someCallback = function(exifObject)
{
console.log(exifObject);
}
$('#file-input').change(function(e)
{
files = event.target.files;
for(var i = 0, len = files.length; i < len; i++)
{
var file = files[i];
$(this).fileExif(someCallback);
console.log(file);
}
});
但每次我在我的控制台中只从一个文件中获取相同的重复exif数据(无论上载了多少文件)。如果我改变:
$(file).fileExif(someCallback);
我得到了:
TypeError: Cannot read property '0' of undefined
我对jQuery和JS的了解非常有限......拜托,有人可以帮我吗?
答案 0 :(得分:0)
在jquery.exif.js
使用此代码替换$.fn.fileExif
的代码
$.fn.fileExif = function(callback) {
for(var i = 0 ;i < this[0].files.length;i++){
var reader = new FileReader();
reader.onload = function(event) {
var content = event.target.result;
var binaryResponse = new BinaryFile(content);
callback(EXIF.readFromBinaryFile(binaryResponse));
};
reader.readAsBinaryString(getFilePart(this[0].files[i]));
}
};