1

こんにちは皆さん、私は立ち往生しているjQueryの問題を抱えています。時々それは機能していて、私には正しい高さを与え、他の人にはまったく異なる高さを与えます. 読み込み中の順序に関係があるのか​​もしれませんし、何か間違ったことをしただけかもしれません。よろしければご覧いただき、間違いがありましたらお知らせいただけますでしょうか。私はそれをお願い申し上げます。それはWordpressサイトにあり、ヘッダーにあります....

 <script type="text/javascript">

jQuery(document).ready(function( $ ) {

// boxen gleiche hoehe

    if($(window).width() >= 1600)  {
        $(".home #fb").height($("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true) - 45) +'px';
        }


    $(".home #twitter, .page-template-homeLayout-php #twitter").height($("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true));
 });

 $(window).resize(function() {

        if($(window).width() >= 1600)  {
        $(".page-id-1235 #fb").height($("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true) - 45) +'px';
        }

        $(".home #twitter, .page-template-homeLayout-php #twitter").height($("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true));


});


});

</script>
4

2 に答える 2

0

この問題は、この問題が一見ランダムに発生することを説明する if ステートメント内の不適切なコードの結果であるように私には思えます。

これは不正確です:

if($(window).width() >= 1600)  {
 $(".home #fb").height( $("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true) - 45) +'px';
}

これは次のようになります。

if($(window).width() >= 1600)  {
 $("#fb").height( 
  $("#homebox").innerHeight(true) + 
  $("#homebox2").innerHeight(true) - 45
 );
}

ページごとに許可される ID は 1 つのみであるため、ID を使用するだけでセレクターに十分であることに注意してください。また、int 値を取り、 css プロパティのようにheight()必要としません。'px'

同じことが言えます

if($(window).width() >= 1600)  {
 $(".page-id-1235 #fb").height($("#homebox").innerHeight(true) + $("#homebox2").innerHeight(true) - 45) +'px';
}

どちらであるべきか

if($(window).width() >= 1600)  {
 $("#fb").height(
  $("#homebox").innerHeight(true) + 
  $("#homebox2").innerHeight(true) - 45);
}
于 2012-11-15T09:07:07.490 に答える
0

これは、幅の基準として $(window) を使用しているためです。代わりに、サイトをコンテナに入れます

HTML

<div class="container">
 <div>your content</div>
</div>

CSS

.container {
 width: 100%;
 margin: 0 auto;
}

次に、JS で $(window) を $(.container) と TravisJ からの編集に切り替えます。

于 2012-11-15T09:08:15.507 に答える