0
<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 包裹它来使我的内容居中,将它推到中间 'top:50%' 并将它的边缘移回顶部,这样它就会在'margin-top:208px' 的中间(它的内容的高度)。除此之外,我有一个隐藏在滚动屏幕下方的页脚(无论屏幕的分辨率是多少),并且由于居中的东西,页脚滚动太多.. top:50% 将页脚向下推我必须找到一种方法将其推回..这就是 jquery 部分的用武之地。我知道有很多方法可以将页脚保持在屏幕下方或下方,但我正在使用 cms patform 并且有很多错误和继承的css,所以它太复杂了。

无论如何,现在一切都很好并且可以正常工作,希望有一天它对某人有用。

谢谢您的帮助。

4

1 回答 1

3
var p = $("mainWrap");

#如果它是一个 ID ( ) 或一个类 ( ) ,则需要一些指示符.。对于一个 ID,它应该看起来像

var p = $("#mainWrap");

编辑:正如 Ash 指出的那样,p很可能是undefined,因此下一行将引发错误,因为undefinedhas no property position

于 2012-05-24T08:49:31.490 回答