Получите каждое изображение естественной высоты с помощью jQuery

Я должен читать естественную высоту каждого изображения, и я должен делать расчеты. Однако у меня есть некоторые проблемы с чтением на естественную высоту.

$('div.imgkirp img').each(function(){
    console.log($(this).naturalHeight);
});

Он получает: (номер изображения) undefined в журнале консоли. Как я могу прочитать каждую естественную высоту изображений?

Ответ 1

var image = new Image();
image.src = $(this).attr("src");
alert('width: ' + image.naturalWidth + ' and height: ' + image.naturalHeight);

Этот подход не работает в версиях IE 8 и ниже, поскольку он не поддерживает свойства "naturalWidth" и "naturalHeight". Для достижения такого же использования этот код

var image = new Image();
image.src = $(this).attr("src");
image.onload = function() {
console.log('height: ' + this.height);
};

Ответ 2

Попробуйте использовать свойство naturalHeight изображения, используя метод prop jQuery

$('div.imgkirp img').each(function(){

   console.log($(this).prop('naturalHeight'));
});