0
<script type="text/javascript">
    $(document).ready( function () { 
        $('#cell').css('height',$(window).height()+'px');
    });
</script>

ご覧のとおり、#cell の高さをページの高さとして定義するスクリプトがあります。top=50%しかし、このdivの外に、それを配置margin-top=-218pxして画面の中央に配置する別のdivを取得 しました。そのため、ページの高さの高さは大きくする必要があります。

私はこのようなことをしようとしましたが、正しい構文が見つかりません-

<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);
});

コメントしてくれてありがとう。

私がやろうとしていたことを尋ねるとコメントした人のために:私はコンテンツを「top:50%」で中央にプッシュするDIVでラップしてコンテンツを中央に配置し、上部にマージンを戻して、 'margin-top:208px' (コンテンツの高さ) による中央。それに加えて、スクロールされた画面の下に隠れるフッターを取得しました(画面の解像度に関係なく)、センタリングのせいで、フッターがスクロールしすぎました..上部:50%がフッターを深く押し下げ、私はそれを元に戻す方法を見つけなければなりませんでした..それがjquery部分の出番です。フッターを画面の下または下に保つ方法がたくさんあることは知っていますが、cms patformで作業していて、たくさんありますバグと継承されたcssのせいで複雑すぎました。

とにかく、今は大丈夫で、うまくいっています。いつか誰かに役立つことを願っています。

助けてくれてありがとう。

4

1 に答える 1

3
var p = $("mainWrap");

#ID ( ) またはクラス ( )である場合は、何らかのインジケーターが必要.です。IDの場合、次のようになります

var p = $("#mainWrap");

編集: アッシュが指摘したように、pほとんどの場合そうであるため、プロパティがないundefinedため、次の行でエラーがスローされます。undefinedposition

于 2012-05-24T08:49:31.490 に答える