0

基本的に、いくつかの絶対位置 div があります。これらは、クリックするとコンテンツを開いて表示する単なるタブです。

また、垂直スクロールのページネーションもあります (Facebook の永遠のスクロールと同じように)。

タブを使用すると、これらのいくつかはページの下に数千ピクセル配置されます。つまり、これらはページを引き伸ばしているため、垂直スクロールのページネーションが開始される前に大きな白いギャップがあります.

私はもう試した

  • 最初にJqueryを介してすべてのdivを非表示にする
  • それらをdivでラップしてフローティング
  • 異なる z インデックス
  • 車体高の設定バリエーション。

私の目的は、何らかの形でブラウザにそれらを無視させることです。

これが役立つ場合:

私が使用しているタブの場合: TabSlideOut - http://www.building58.com/examples/tabSlideOut-muriple.html

ページネーションのスクロール - http://www.contextllc.com/dev_tools/jQuery/scrollExtend/latest/jquery.scrollExtend.example.html

4

1 に答える 1

0

あなたの質問を理解していることを願っています: 絶対位置が与えられた div があり、ページでイベントが発生するまでそれらを非表示にする必要があります。

私が便利だと思うのは、単純な .hide() が必要なものではない場合に、ビューポートからコンテンツを「隠す」ことです。(スプライトマップでこれに遭遇しました。)

私が使用する 1 つの方法は、CSS クラス .hidden を作成し、次のように呼び出すことです。$(selector).addClass('hidden');

.hidden{position: absolute; top: -9999px !important; left: -9999px !important;}

!重要は...まあ、重要です。簡単に言えば、あるクラスに !important があり、別のクラスにない場合、通常、あるクラスが優先されます。JQuery を使用して CSS 操作を渡し始めると、!important を無視してしまう可能性があります。

次に、このクラスを<div>邪魔にならないように必要なものに割り当てます。--[ jsfiddle ]-- も作成して、コンテンツをビュー ポートに取り込む 2 つの方法を示しました。

最初の (aTab) は .hidden テクニックを使用します。2 番目 (bTab) は .slideToggle() を使用します。これは、ロードする次のコンテンツ セットに対して、または silder アドオンと組み合わせて実装できます。

お役に立てれば!

于 2013-01-16T06:42:40.430 に答える