在页面加载jQuery后匹配div高度

时间:2011-12-22 14:44:06

标签: jquery image height match

在加载图像后,我无法匹配div的高度。它获得了最高div的高度,但它似乎在图像加载之前得到它。有没有办法解决?这是我到目前为止:

function matchColHeights(col1, col2) {
    var col1Height = $(col1).height();
    alert('col1 '+col1Height);
    var col2Height = $(col2).height();
    alert('col2 '+col2Height);

    if (col1Height < col2Height) {
        $(col1).height(col2Height);

    } else {
        $(col2).height(col1Height);
    }
}

$(document).ready(function() {
    matchColHeights('#leftPanel', '#rightPanel');
});

这是指向其运行位置的链接:http://www.tigerstudiodesign.com/blog/

3 个答案:

答案 0 :(得分:5)

加载图像后,列高是否调整大小。类似的东西:

$('img').load(function() {
     $(col1).height(col2Height);
});

答案 1 :(得分:1)

根据this question,加载所有图片时会触发window.load,请尝试以下操作:

$(window).load(function() {
  // ...
}

答案 2 :(得分:0)

问题是图像标签上没有提供宽度和高度。 DOM使用它们进行测量,如果没有提供它们则必须等待图像加载以便用正确的高度“重新绘制”屏幕。这就是它无法正常工作的原因..