<script type="text/javascript">
$(document).ready( function () {
$('#cell').css('height',$(window).height()+'px');
});
</script>
如你所见,我有这个脚本可以将#cell的高度定义为页面的高度。
但是在这个div之外我有另一个div,它将top=50%
和margin-top=-218px
置于屏幕中间。
因此,页面高度的高度应该更大。
我试图做这样的事情,但我找不到正确的语法 -
<script type="text/javascript">
$(document).ready( function () {
var p = $("mainWrap");
var position = p.position();
heightPage = $(window).height()
heightTop = position.top;
heightFixed = heightPage - heightTop + "px";
$('#cell').css('height', heightFixed);
});
</script>
编辑: 我能够这样做
<script type="text/javascript">
$(document).ready( function () {
var s = document.getElementById('cell');
var fixedHeight = $(window).height() - s.offsetTop;
fixedHeight = fixedHeight + "px";
$('#cell').css('height',fixedHeight);
});
感谢您的评论。
对于评论要求我尝试做什么的人: 我把我的内容用DIV包裹起来,用DIV把它推到中间“top:50%”并将它边缘回到顶部,这样它就会在'margin-top:208px'中间(它的高度为内容)。 除此之外,我有一个页脚隐藏在屏幕下滚动(无论屏幕的分辨率是多少),并且因为中心的东西,页脚滚动得太多了...顶部:50%将页脚向内推深我必须找到一种方法将它推回去......这就是jquery部分的用武之地。 我知道有很多方法可以让页脚保持在屏幕下方,但是我正在使用cms patform,并且有很多bug和继承的css,所以它太复杂了。
无论如何现在还可以正常工作,希望有一天它会对某人有用。
感谢您的帮助。
答案 0 :(得分:3)
var p = $("mainWrap");
如果是ID(#
)或类(.
),则需要一些指示符。对于ID,它应该看起来像
var p = $("#mainWrap");
编辑:Ash指出,p
很可能是undefined
,因此下一行会抛出错误,因为undefined
没有属性position
。< / p>