为什么这个程序没有正确调整高度?

时间:2015-08-20 18:58:45

标签: javascript jquery dom javascript-events responsive-design

我有一个程序

jQuery(window).load(function() {
    function rescaleStuff ( )
    {
        jQuery('.children-have-equal-height').each(function(){
            var children = jQuery(this).children();
            var numChildren = children.length;
            if (numChildren > 1) 
            {
                var firstChild = children.first();
                var maxHeight = firstChild.height();
                firstChild.siblings().each(function()
                { 
                    var thisHeight = jQuery(this).height(); 
                    if (thisHeight > maxHeight) 
                        maxHeight = thisHeight;
                });
                children.height(maxHeight);
            }
        });
    }

    rescaleStuff();

    jQuery(window).resize(function()
    { 
         rescaleStuff();
    });
});

应该使具有类children-have-equal-height的元素的所有子元素具有相同的高度,即最高子元素的高度。这适用于页面加载,但在随后调整窗口大小后,元素保持与加载页面时相同的高度。这是为什么?

1 个答案:

答案 0 :(得分:0)

这是因为这个函数jQuery(window).load(function() {}

它仅在页面加载时触发。

放置jQuery(window).resize(function(){}function rescaleStuff ( ){}

jQuery(window).load(function() {}

之外