我有这个非常简单的功能,根据页面上的元素调整div的大小。
由于页面顶部的静态导航栏,我需要控制它下面的空白空间,第一个div的内容出现在正确的位置(导航栏下方),特别是因为当屏幕较小时,导航栏变大(高度更大)。
我的问题是:为什么它不总是工作?它在大多数情况下都能正常工作,但有时我需要刷新页面才能正常工作。
这里是虚拟的HTML:为什么document.ready不总是工作?
<div id="menu-fixed-top"></div>
<div id="empty-space"></div>
<div id="content"></div>
其中#empty-space
是我要控制高度的股利。我使用document.ready
和window.resize
来控制它。 jQuery函数是:
$(document).ready(function() {
var height = $("#menu-fixed-top").innerHeight();
$("#empty-space").height(height);
$(window).resize(function() {
$("#empty-space").height(height);
});
});
有什么办法得到它的工作时间的100%?或者唯一的方法是确保使用媒体查询?
谢谢
能否请您发表[的jsfiddle(HTTP://的jsfiddle .net)的代码可以重现问题? –
DOM准备好并不意味着内容被加载...当你计算元素宽度/高度时,你也需要内容 - 所以,使用$(窗口)加载... – sinisake
谢谢! window.load解决了这个问题。 – foobar321