2012-07-12 16 views
9

のスクロールバーのための十分なコンテンツが存在しないとき、私は偉大な無限スクロールplugin- http://www.infinite-scroll.com/infinite-scroll-jquery-plugin/トリガー無限スクロール、ページの読み込み

を使用しています。しかし、より大きな画面解像度のスクロールバーを表示するのに十分なポストはそうありませんが無限スクロールは決して引き起こされない。初期の投稿が多数なくても、これを回避する方法があるのだろうか。

ブラウザの高さなどを確認するためにif文を推測しますが、trueを返す場合は、どのようにして無限スクロールをトリガーしますか?クイックチェックのために行く

任意のアイデア

おかげ

ベン

答えて

13

一つの方法は、次のようになります。

// Force 'retrieve' for next page if window is taller than document 
if($(window).height() >= $(document).height()){ 
$wall.infinitescroll('retrieve'); 
}; 

を使用すると、複数のファンクションにこれを有効にする必要があるかもしれませんゲスウィンドウがドキュメントよりも背が高くなるまで、必要に応じて '取得'します。

+0

これは答えとして選択する必要があります。ありがとうルイージ! – Joe

+1

素晴らしい作品! ; D – Waymas

3

はinfinitescrollの新しいバージョンでは、このソリューションが作成され、上で議論されたオプション

prefill: true 

を設定します。

+0

それは私のためには機能しません。垂直スクロールなしで同じ方法のままで、新しい項目は追加されません。 – Atadj

+0

infinitescrollプラグインの最新バージョンを使用していることを確認してください。 –

+0

私はまだ2.0b2.120519を使用していますが、まだ何もありません。この質問に対するもう1つの答えが機能します。 – Atadj

0

私は質問が古いことを知っていますが、これはあなたの多くを助けるでしょう。

@Luigi回答は良いですが、スクロールバーを表示するためにコンテンツを一度読み込むだけでは十分ではありませんか?

これは実際にはスクロールバーを表示するために必要になるまでそれが最高

var no_scrollbar_workaround = setInterval(function checkVariable() { 

      if($(window).height() >= $(document).height()) { 
        jsonloader(); //here you put your function for more content 
      } else { 
        clearInterval(no_scrollbar_workaround); 
      } 
}, 1000); 

これは、複数回実行されます行う必要があります。 -

はあなたがCtrlキー+に限りすることができますようにページをズームアウトするとき、それは栄光だ、この機能をテストし、すべて見ることができます。

スクロールバーが表示されるまで、新しいコンテンツの呼び出しが表示されます。

関連する問題