我想为7个动画预加载152 jpg图像。我试图在动画(前40个图像)所需的图像预加载后立即运行单个动画。在所有浏览器中它运行良好以及在android中也是如此。但是在ipad中,动画(背景图像更改)运行不顺畅,直到所有152张图像都不会预加载。
function preload(arguments,index) {
console.log(index)
for(var i=1;i<=eval(imagesPerScreen[index][1]-imagesPerScreen[index][0]+1);i++){
scheen[index][i-1] = new Image();
scheen[index][i-1].src = arguments[index][eval(i-1)];
$(scheen[index][i-1]).load(function(){
imgLoaded++;
var percent=parseInt((imgLoaded/(imagesPerScreen[index][1]-imagesPerScreen[index][0]+1)*100).toFixed())+8;
if(!isiPad){
//document.getElementById("loadingStatus").innerHTML="loading.. "+percent+"%";
$("#loadingStatus").css('width',percent+'px');
}
else{
//$("#loadingStatus").css('display','none');
$("#loadingStatus").css('width',percent+'px');
}
});
}
scheen[index][eval(imagesPerScreen[index][1]-imagesPerScreen[index][0])].onload= function() {
++screenLoaded;
imgLoaded=0;
$("#rightbutton").css('display','block');
$("#rightArea").css('display','block');
$("#loadingStatus").css('display','none');
$("#status").fadeOut("fast");
$("#preloader").fadeOut("fast");
if(waiting){moveNext();}
if(screenLoaded<7){
preload(pics,index+1)
}
}; }