绝对定位元素的计算高度
Computed height of absolute positioned element
我在读取绝对定位元素高度时遇到问题。
我的主要目标是设置另一个DIV,它将淡出黑色背景以填充整个页面,但我不会去任何地方。。。
我尝试了document.body.scrollWidth
,但它只在加载阶段开始时有效。当主DIV加载时,它比渐变DIV占用更多的空间,并且在底部有一个空间,它还没有被渐变DIV元素填充。
有人能帮忙吗?
div#main_theater{
position: absolute;
left: 80px;
top: 0;
background-color: #EEE4B9;
width: 940px;
opacity: 1;
z-index: 100;
}
div#blackOut{
position: absolute;
text-align: center;
top: 0;
left: 0;
background-color: #000;
width: 100%;
z-index: 10;
color: #fff;
opacity: .7;
}
这是工作(开始(:
var picHeight = document.body.scrollWidth;
blackOut = document.createElement('div');
blackOut.setAttribute('id','blackOut');
blackOut.style.height = picHeight + 'px';
在AJAX调用PHP脚本后,我得到了新的窗口大小。新的尺寸比div#main_theater
大,并且它比旧的div#blackOut
大。
if(document.getElementById('main_theater')){
blackOut.style.height = document.getElementById('main_theater').style.height;
}
AJAX调用结束时,div#main_theater
比以前的主体高度大。此外,我尝试在重新流后、AJAX调用后读取scrollHeight/offsetHeight,数字与之前相同(?(。。。
EDIT:AJAX responseText可能加载一个文档,但JS中的下一个命令太快,无法在加载图像时捕获真实的文档大小。在我看来,图像并没有在这么短的时间内加载,所以文件的大小无法正确读取。
为什么不使用固定定位呢。类似这样的东西:
<style>
div#totaldude {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 100;
background: black;
opacity: 0;
}
</style>
<script>
$("body").append("div id='totaldude'></div>");
$("#totaldude").fadeTo("fast", 0.5);
</script>
相关文章:
- 如何计算每个元素's的高度,并将这些值用作函数中的变量
- 使用jquery计算包含另一个带边距元素的元素的高度
- 如何计算缩放后画布的新高度和宽度
- 获取计算高度-Javascript-而不是jQuery
- Chrome和Firefox之间的高度计算不同
- 无法从 AngularJS 中的元素计算偏移高度
- 展开预览(计算高度:函数)
- Div 不会自动计算高度
- 新偏移量更新字体大小后不计算高度
- 根据点击量或数字计算高度
- 调整大小时重新计算高度
- 在TextArea的自动大小上调整计算高度,理想地工作吗?(jsfiddle - updated)
- 为什么$(someElement).height()从来没有正确地为我计算高度
- 元素的大小需要重新计算高度,因为JSON数据被过滤
- 位置相对内容计算高度
- 沙狐不正确地计算高度
- 调整大小和计算高度- bug
- 绝对定位元素的计算高度
- 如何使用jquery计算高度
- 弹出窗口计算高度