javascript - 如何动态设置div标签的高度?

标签 javascript jquery html

我正在使用 ASP.NET 和 C#。我需要根据屏幕分辨率更改 div 标签的高度。这是我尝试过的。

function setHeight() {
        var footer = document.getElementById('footerSection').offsetHeight;
        var h = document.documentElement.offsetHeight - footer;
        document.getElementById('rightContent').style.height = h+"px";    
};

我从这样的 body 标记加载中调用此脚本。

<body onload="setHeight();">

它正在工作,但是这个高度是在渲染完成后分配给该 div 的。因此,首先它会显示根据内部内容分配的高度,几分之一秒后,高度就会更改为我分配的高度。

那么是否可以在渲染之前或加载到窗口之前设置高度?实际上我不希望用户看到高度变化。

最佳答案

如何动态地将内容添加到 div,以便页面加载,然后在内容显示的同时设置高度?

或者,最初为 div 指定 display:none 样式;

<div id="rightContent" style="display:none">

然后在setHeight()中添加:

document.getElementById('rightContent').style.display = "block";   

关于javascript - 如何动态设置div标签的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13971107/

相关文章:

JavaScript 表单 onkeyup 验证错误

javascript - fadeToggle 与 text() 错误?

javascript - 在 JS 中循环多个相同的标记 block 并执行相同的功能而不会产生干扰

html - 位置符号的 HTML 实体是什么

javascript:从公共(public) repo 客户端获取所有问题

javascript - 检查 native 代码

javascript - 使用 Ajax (jquery) 调用 Deezer API - dataType JSON 返回 null - JSONP 返回错误

html - 所有网页中的 Bootstrap 背景图片

javascript - wordpress 合并 css/js 文件

javascript - Codeigniter ajax插入成功重定向