var ie = document.all?true:false ;// On test le navigateur pour IE 

onload = preloadImage // Appel de la function preloadImage() au chargement de la page. Peut etre remplacer par <body onload="preloadImage()">

var i=0; // On initialise le comptage des images a 0.
function preloadImage(){ 
var myContent = document.getElementsByTagName("img") // On repere les images contenu dans la page
	var totalImage = myContent.length // Et on compte combien il y'en a
	percent = Math.ceil((i+1)*100/totalImage) // A chaque passage dans la fonction, on calcule le pourcentage de i par rapport au nb d'image

	if (i < totalImage){ // Si l'image traité n'est pas la derniere image du doc on execute ce qui suit.
		if (myContent.item(i).complete) {  // si l'image i est chargée, on envoi le pourcentage dans le div
		i++ // On increment i, pour passer a l'image suivante
		setTimeout(preloadImage) // Et hop, on repasse dans la fonction avec l'image suivante
		}
	} else { // Sinon, on deduit que les images ont toute été chargées, et on cache le preload.
	if (!ie) document.getElementById("preloadCache").style.visibility = "hidden"; // Si le client n'est pas IE on vire tout simplement le cache
	else crosoftFade() // Sinon on applique un effet de fade progressif en appelant la fonction crosoftFade() 
	}
}

var opacity = 100 // Opacity de depart
function crosoftFade(){
opacity -= 50; // Opacity -25 a chaque passage
document.getElementById("preloadCache").style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity=" + opacity + ")";
if (opacity > 0) setTimeout(crosoftFade); // On passe cette fonction en boucle tant que le cache n'a pas disparu
else document.getElementById("preloadCache").style.visibility = "hidden"; 
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}