jquery の $.ajax を使用して、画像のページを div にロードするサイトに取り組んでいます。ユーザーがページの一番下までスクロールすると、画像の別のページが div に読み込まれます。現在、新しいコンテンツがフェードインしていますが、画像が完全に読み込まれる前にフェードインしています。解決策を確認しましたが、自分に合った解決策が見つかりませんでした。明確にするために、画像の各セットは、個々の画像の div で満たされた div です。
私が使用しているロード関数は次のとおりです。
function loadContent(pageName, pageView, max_feed){
loader="<div id=loader><img src=SPACER" height=\"100\" \>"
+ "<br/><img src=\"LOADER" />"
+ "<br/><img src=\"SPACER" height=\"100\" \></div>";
$(loader).appendTo('#photo_container').fadeIn('fast');
$.ajax({
url:pageName,
data:{view:pageView, max_feed_id:max_feed},
success:function(result){
$('#loader').remove();
$(result)
.appendTo('#photo_container')
.hide()
.fadeIn('slow');
$(window).data('loading', false);
}
});
};
fadeIn() が呼び出される前に、新しいコンテンツがロードされるのを待つ簡単な方法はありますか? つまり、似たようなものはありますか
$(window).load(...)
divコンテンツだけに使用できますか? isLoadingMore のようなある種のグローバル変数を設定し、それを ajax で読み込まれたコンテンツの先頭で false に設定してから、
$(window).load(...)
変数をtrueに設定する関数を含むajaxページへの関数を追加し、loadContent関数でfadeIn関数を呼び出す前に、そのフラグがtrueに設定されるのを待機するwhileループまたは何かを追加します。それが良いアイデアなのか、それとも機能するのかはわかりません