inscamp
@inscamp

Как узнать высоту div с изображением внутри?

Создаём див, записываем в него <img src="..">Some text. Затем "закидываем" его в DOM.
JSFiddle
Только после того, когда див станет частью структуры DOM, мы можем узнать его конечную высоту с помощью jQuery-метода .height().
Однако вычисление высоты таким образом не всегда будет давать ожидаемый результат. Если в приведённом примере поменять ссылку на изображение, то значение высоты станет равным высоте дива без учёта высоты изображения (как будто она равна нулю или чуть больше).
Так как же определять высоту "готового" дива с изображением внутри?
  • Вопрос задан
  • 763 просмотра
Решения вопроса 1
thewind
@thewind
php программист, front / backend developer
Потому что картинка еще не загружена, вот и высота 0. Ставьте вычисление высоты на событие onload для картинки.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Дмитрий верно описал истоки проблемы. Если нет возможности дождаться загрузки страницы/картинки, то можно задавать размер картинки в таге на серверной части - тогда этой проблемы не будет.
Ответ написан
Комментировать
SagePtr
@SagePtr
Еда - это святое
Либо событие load ловить, либо отдельно хранить размеры картинки
Ответ написан
keslo
@keslo
Возможно как-то так нужно - jsfiddle.net/keslo/6d5axnb9/3
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы