Динамическая высота элемента div возвращает 0 после добавления

0

Это часть моего кода. Он находится внутри цикла.

{//just to show its inside loop
ph = "<a id=\"" + id + "\" class=\"polaroid\" href=\"" + 
src + ".jpg\"><img src=\"" + src + "_q.jpg\"><p>" + item.title + "</p></a>";
$("#images").append(ph);
}

как только он запускается, он добавляет ph в div div, однако, когда я вызываю $ ("# images"). height(); он возвращает 0. Я поместил вызов на высоту вне div, после того как все элементы были добавлены, и он все равно возвращает 0. любые идеи будут оценены. Кроме того, "#images" не создается динамически, просто динамически заполняется.

вот мой html:

<body><div id="images"></div>
  • 2
    Одной из возможных причин является то, что height могла быть вызвана до загрузки области изображений
  • 0
    Если вы знаете высоту изображений, можете добавить атрибут высоты к тегу изображения или сделать это в css .... следует разрешить вызовы перед загрузкой изображения
Показать ещё 1 комментарий
Теги:
dynamic
height

2 ответа

1
Лучший ответ

Увы, я понял, я добавил границы всем элементам (разные цвета), и я заметил, что, хотя в DOM он показывался как теги, находящиеся внутри #images div, они были вне границ #images, поэтому я пошел css и добавил overflow-y: auto, и они отображались внутри границы, и теперь я получаю значение от $ ("# images).height(). Благодарю вас, ребята, за вашу помощь, это позволило мне сосредоточиться на возможной причине и возможное решение.

0

Будет что-то вроде этой работы?

$(document).ready(function() {
    for(var i=0;i<3;i++)
    {
        ph = "<img src=\"http://placekitten.com/g/30/30\" alt=\"\" />";
        $("#images").append(ph);
    }

    $("img").one('load', function() {
        $("#height").html($("#images").height());
    });
});
  • 0
    Это все еще возвращает 0; но я заметил кое-что странное, когда я делаю $ ("# images a"). height (); это возвращает меня
  • 0
    Это все еще возвращает 0; но я заметил кое-что странное, когда я делаю '$ ("# images a"). height ();' он возвращает 212, что является высотой одного тел.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню