次のことを行うコードがいくつかあります。
- 外部コンテンツは AJAX 経由で読み込まれます (動画のサムネイル画像)
- $("#content").append(); を使用して、新しいコンテンツが div に挿入されます。
- モバイル タッチ スクロール ヘルパー (iScroll) がこの div に適用されます。
ただし、AJAX イベントが原因で DOM が変更された場合、jQuery の「ロード」イベントは発生しません。これは、スクローラーを初期化する呼び出しがあまりにも早く (コンテンツ内の画像がロードされる前に) 発生することを意味し、初期化されないことが多いことを意味します。 . 画像が読み込まれるのを待たないと、コンテンツ ボックスはスクロール機能が必要ないほど短いことがよくありますが、その後画像が読み込まれると、ボックスはスクロールできなくなります。
$("#videoList").append(videoThumbnails);
$(document).load(function () {
// doesn't fire
initScroller();
});
追加された HTML で参照されているすべての画像が読み込まれるまで、jQuery の追加機能はブロックされないようです。
すべての画像がロードされた後に initScroller() 関数を呼び出すために、AJAX 関数によってロードされたすべての画像のロードが完了したことを検出するにはどうすればよいですか?