我现在有一个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,但每次之后它都填充了正确的值....我假设因为弹出窗口中断了一小段时间的代码,浏览器已经是时候完全加载所有图像并抓住适当的高度。
不幸的是,我不打算在那里留下一个弹出窗口,只是为了每次都适当地填充我的身高。
我做错了什么?
答案 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);
});