次のように無限スクロールを実装しました。
new_page_value = 1;
$(window).scroll(function() {
if($(window).scrollTop() >= $(document).height() - $(window).height() - 200) {
new_page_value = parseInt(new_page_value) + 1;
get_page(new_page_value);
}
});
ユーザーがページの一番下 (残り 200px) に到達すると、関数get_page()
が呼び出されます。これには、新しいページのすべてのコンテンツを取得してドキュメントの に追加するajax 呼び出しが含まれて<body>
います。
サイトが大きくなり、10 個の小さなページの代わりに無数の巨大なページがある場合、無限スクロールを長時間維持するのに十分な永続性がある場合、ユーザーのブラウザーがクラッシュする可能性があることに気付きました。
これはこの問題の可能な解決策でしょうか:
<body>
10 ページ目まで新しいページをドキュメントに追加し続けます。その後<body>
は、追加する代わりにコンテンツを完全に置き換えます。html()
ではなく使用しappend()
ます。
これが実際にクラッシュを防ぐために機能するかどうかはわかりません。.html()
ajax経由で持ち込まれた以前のhtmlの「メモリ」をクリアしますか?