Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Определение высоты изображения. (https://javascript.ru/forum/jquery/25626-opredelenie-vysoty-izobrazheniya.html)

m-pokrovskii 10.02.2012 20:17

Определение высоты изображения.
 
Сразу предупреждаю img.height() дело не ограничется.

Итак есть последовательный вывод элементов.
var elements = $('.root', context).children();
elements выводится одним за другим и определяется высота. Проблема в том, что в одном элементе есть картинка. И высота определяется не правильно посколько картинка еще не прогрузилась.
А мне нужно получить высоту именно с картинкой.

Что пробовал:
1: .load() - не проконал, поскольку срабатывает после вставки всех остальных элементов.

2: предварительная закрузка изображения. Не прокатило, поскольку мне нужна высота не фактическая, а реальная (то есть картинки уже с ресайзом). А картинка помечена max-width:100%; и стоит в блоке width:30%;

Как поступить? Любые идеи подкидывайте.

Nekromancer 10.02.2012 22:26

Цитата:

Сообщение от m-pokrovskii
1: .load() - не проконал, поскольку срабатывает после вставки всех остальных элементов.

img.onload = function(){
//...
}

m-pokrovskii 11.02.2012 00:02

Без разницы. Это все равно событие. Вешается и ждется выполнения независимо.

Nekromancer 11.02.2012 00:11

Цитата:

Сообщение от m-pokrovskii
Без разницы. Это все равно событие. Вешается и ждется выполнения независимо.

Что без разницы? Кто то говорил, что это не событие? Да, и?

Aetae 11.02.2012 02:02

Простой ответ: Никак.
Правильный ответ: Верстать так, чтобы не требовалось вмешательство js в высоту элемента.
Ответ, которого вы хотите: Вешаем load на первую картинку, выводим элемент. Срабатывает load - вещаем load на вторую картинку, выводим второй элемент, итд.


Часовой пояс GMT +3, время: 16:55.