1

我需要计算并设置一些 div 的高度(初始设置)。当浏览器窗口的高度改变时 --> 改变 div 的高度。

如何更好地重写此代码(我想做一次初始设置并在窗口调整大小时更改它):

$(document).ready(function () {
    var height = document.documentElement.clientHeight - 500;
    if (height < 135) {
        height = 135;
    }
    document.getElementById('left_space').style.height = height + 'px';

    $(window).resize(function () {
        var height = document.documentElement.clientHeight - 500;
        if (height < 135)
        {
            height = 135;
        }
        document.getElementById('left_space').style.height = height + 'px';
    });
});
4

3 回答 3

1

那是你要找的吗?

api.jquery.com

jQuery(document).ready(function () {

$(window).resize(function() {
   var height = document.documentElement.clientHeight - 500;
    if (height < 135) {
        height = 135;
    }
    document.getElementById('left_space').style.height = height + 'px';

    jQuery(window).resize(function () {
        var height = document.documentElement.clientHeight - 500;
        if (height < 135)
        {
            height = 135;
        }
        document.getElementById('left_space').style.height = height + 'px';
    });

});


});
于 2013-07-04T07:57:16.123 回答
1

如果您只是想整理代码,它可能看起来像这样:

$(document).ready(function () {

    var resizeIt = function() {
      var height = Math.max(document.documentElement.clientHeight - 500, 135);
      $('#left_space').css('height', height + 'px');
    };

    resizeIt();

    $(window).resize(function () {
        resizeIt();
    });
});

这里我把设置高度的那几行代码都拉到了自己的函数里面,所以代码就不重复了。然后我利用了一些可以在 jQuery 中使用的较短语法来查找和更改元素的样式。

于 2013-07-04T08:02:37.730 回答
0

我认为 jQuery(window).resize 一个会很好

于 2013-07-04T07:58:16.930 回答