javascript - 如何让 div 在窗口调整大小时更改最大高度?

标签 javascript jquery css

代码:http://jsfiddle.net/MDnrk/7/

对于那些懒得点击链接的人:

$j(function(){
    // need to fix some things that CSS doesn't seem to be able to fix (esp cross browser)
    fix_drawer_height()
    $j(window).resize(function() {
        fix_drawer_height()
    });
})


function fix_drawer_height(){
    var new_height = document.body.offsetHeight - $j(".redline_info_scrollable").offset().top; 
    $j(".redline_info_scrollable").css({
        'max-height': new_height + 'px;'
    });
}

现在,在我的应用程序中,fix_drawer_height() 在 DOM 准备就绪时被调用,但在 JS fiddle 中似乎没有被调用。所以我不确定这是否是显示此问题的正确媒介。

仍然不确定什么会导致窗口调整大小监听器无法正确设置最大高度。 =\

目标是让可滚动的 div 始终拉伸(stretch)到窗口的高度。

通常我只会在 CSS 中使用 height: 100% ,但这并不是真正的跨浏览器,也不适用于 div 在我的实际应用中的定位方式。

谢谢!

最佳答案

你可以使用这个:

function fix_drawer_height() {
    $('.redline_info_scrollable').height($(document).height());
}

并将其添加到您的 onload 或 onresize 中;

工作代码:http://jsfiddle.net/MDnrk/13/

关于javascript - 如何让 div 在窗口调整大小时更改最大高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8975414/

相关文章:

javascript - 如何在多个动态创建的输入上使用 Bootstrap Datetimepicker

javascript - JSON 和 JavaScript - 如何使用 json 读取我的列表

html 列样式和边框 css

html - 设置超出其文本边界框的字体样式

javascript - 如何使用 javascript 或 jquery 激活 Clippy-jquery

javascript - 菜单的行内纯文本滑动切换

javascript - 经过一些研究,循环和 setTimeout 函数仍然不起作用

javascript - 将数据解析为整数

javascript - 选择后模糊()/焦点()

javascript - Promise 的 resolve 和 reject 函数的返回类型是什么?