AJAXを使用して、ページAのページBのコンテンツを表示します。
コンテンツが表示される前に、jQueryにすべて(テキスト、画像など)がロードされるのを待機させるにはどうすればよいですか?
$.ajax({
url:"pageB.html",
beforeSend: function() {
//show loading animation here
}
success: function(data) {
//hide loading animation here
$("body").append(data);
}
});
beforeSendを使用して、AJAXリクエストが処理されているときにユーザーに読み込みアニメーションを表示します。ここで、待機時間を「延長」して、すべての画像が読み込まれるまで読み込み中のアニメーションが消えないようにします。
$("body").on("load", "images class here", function() {//show content})
最初に追加されたデータを非表示にし、すべての画像が読み込まれるのを待ってからコンテンツを表示しようとしまし
success
たが、イベントは発生していないようです。
何か案は?
アップデート:
更新されたコード:
$.ajax({
url:"pageB.html",
beforeSend: function() {
//show loading animation here
}
success: function(data) {
//hide loading animation here
$("body").append(data);
$("body").on("onload", "img", function() {//display content});
}
});