使用JQuery控制div的高度

时间:2011-12-08 20:07:46

标签: javascript jquery css

我现在有一个div就像一个“画廊”可以这么说。

 div #Images {
    max-height:90%;
    height:500px;
    position:relative;
    overflow:hidden;
}

由于这个div的性质,我必须为它设置一个高度,否则图像不会出现。我想做的是使用JQuery将高度设置为列表中最高图像的高度。所以我这样做:

jQuery(document).ready(function($) { 

 $(document).ready(function() {
     var imageHeight = 0;
        $("#wrap").find("img[id*='car_']").each(function(i) {
                       if (imageHeight < $(this).data('origHeight'))//.height())
                imageHeight = $(this).data('origHeight');
                 });
      if (imageHeight > 0)
        $("#Images").css('height', imageHeight);
      else
        $("#Images").css('height', 500);
  });
});

不幸的是,imageHeight永远不会变成任何东西。这里是踢球者......如果我添加警报(imageHeight);在.each()内部第一次为0,但每次之后它都填充了正确的值....我假设因为弹出窗口中断了一小段时间的代码,浏览器已经是时候完全加载所有图像并抓住适当的高度。

不幸的是,我不打算在那里留下一个弹出窗口,只是为了每次都适当地填充我的身高。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

这是做同样的事情,但更清楚:

$(window).load(function() {
    var imageHeight = 500;
    $("#wrap").find("img[id*='car_']").each(function(i, o) {
        imageHeight = Math.max(imageHeight, $(o).height());
    });
    $("#Images").css('height', imageHeight);
});