1

大きな背景画像を含むブロックがたくさんある大きなページを作成しているので、プリローダーを表示して背景に画像をロードし、ローダーを更新するのが最善だと思いました (画像 4/20、ecc)。私の問題は、onload イベントがローダーのディアスピアを発生させても、まだイメージのロードが表示される場合です。これは、イメージが完全にロードされていないことを意味します。なぜこれが起こるのですか?何か案が?

ここにページがあります:

http://zhereicome.com/experiments/statics/myascensor/#1-1

前もって感謝します

nImages = $('.slide').length;
loadedImgs = 0;
var bgImages = ['img/bbb.png','img/bbb2.png','img/bbb3.png'];

$('.slide').each(function(i){
    var curSlide = $(this);
    var img = new Image();
    img.src = bgImages[ i % 3 ];
    img.onLoad = imageLoaded(img, curSlide);
})    

function imageLoaded(img, curSlide){
    curSlide.css('backgroundImage', 'url(' + img.src + ')');
    loadedImgs++;
    if(nImages == loadedImgs){
        $('#container').css('visibility','visible');
        $('#loader-cont').fadeOut(1000);
    }
    $('.loader-inner .title').text(loadedImgs / nImages);
}
4

1 に答える 1

1

window.onload と document.ready に問題があるようです:

$(document).ready(function(){
// This will be executed when the DOM is ready.
});

$(window).load(function(){
// This will be executed when the whole document and all its 
// referenced items (style sheets, scripts, images, etc.) are loaded.
});

しかし、これは以前に尋ねられ、はるかによく答えられました.jQueryを使用して「お待ちください、読み込み中...」アニメーションを作成するにはどうすればよいですか?

于 2012-10-29T18:04:26.927 に答える