1

アップロードの前に、一度に複数のファイルから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);
    }            
});

しかし、コンソールで1つのファイル(アップロードされたファイルの数に関係なく)から同じ複製されたexifデータを取得するたびに。私が変更した場合:

 $(file).fileExif(someCallback);

私は得ています:

 TypeError: Cannot read property '0' of undefined 

jQuery と JS に関する私の知識は非常に限られています... 誰か助けてくれませんか?

4

1 に答える 1

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]));
     }
};
于 2015-05-10T10:19:40.337 に答える