Есть следующий код:
// Функция загрузки изображений на предпросмотр
function loadInView(files) {
// Для каждого файла
$.each(files, function(index, file) {
// Создаем новый экземпляра FileReader
var fileReader = new FileReader();
// Инициируем функцию FileReader
fileReader.onload = (function(file) {
return function(e) {
var image = new Image();
image.src = fileReader.result;
image.onload = function(){
width = this.width;
height = this.height;
quality = width * height; ///////////////здесь получаем качество изображения, которое надо записать в массив
return quality;
}
// Помещаем URI изображения в массив
dataArray.push({
quality: file.quality, value: file.quality, ////// как записать в массив то, что получили ранее в переменной quality????
name : file.name, value : this.result,
});
addImage((dataArray.length-1));
};
})
(files[index]);
// Производим чтение картинки по URI
fileReader.readAsDataURL(file);
});
return false;
}
// Процедура добавления эскизов на страницу
function addImage(ind) {
// Если индекс отрицательный значит выводим весь массив изображений
if (ind < 0) {
start = 0;
end = dataArray.length;
} else {
// иначе только определенное изображение
start = ind;
end = ind + 1;
}
// Цикл для каждого элемента массива
for (i = start; i < end; i++) {
alert(dataArray[i].quality); //сюда нужно получить значение из массива
//////// остальной код /////
}
}
Как правильно получить размер изображения и добавить его в массив для дальнейшей обработки? Получаю размеры, получаю качество изображения, но как передать эту переменную в массив никак не пойму. В комментариях в коде указаны те моменты, которые не могу понять.