複数のイメージのロードイベントを検出する方法があるのでしょうか(特に、特定のセットの最後のイメージのロードが完了した時点で関数を実行する必要があります)。複数のイメージを検出するロードイベント
たとえば、ユーザーがリンクをクリックすると、lighboxが10個の画像で表示されます。すべての画像がロードされると、ローディングバーが消えます。
jQuery(".lightbox-image").each(function(){
var image = jQuery(this);
jQuery('<img />').attr('src', image.attr('src')).load(function(){
hideLoadingBar();
});
});
これは、残念ながら、あまりにも早く(1つのイメージのロードが完了した後に)hideLoadingBar();
をトリガします。
P.S.
画像がキャッシュされた後に私の機能が必要になります。jQuery('#img1, #img2').load();
は機能しません。
これを参照してください。http://stackoverflow.com/a/9624426/235710 –
@MohammadAdilこれは、画像が既にキャッシュされている場合は正しく動作しません。そして、私は 'hideLoadingBar()'を早く実行するので、手動で起動することはできません。 – Atadj
もし私が間違っていない場合、ロードは常にajax reqです。あなたは進捗状況のコールバックを試しましたか? – steo