var EVENT_LOAD = 'load';

// Chargement de la fonction d'initialisation au chargement de la page
Event.observe (window, EVENT_LOAD, function() { initEnvironment(); creationFausseFenetre(); initGIMG(); });

<!--  //Liens image redirigés. Michel Deboom 05/2005 modifié 09/06, et remodifié le 23/03/2007 par PJL

function initEnvironment() {
	// initialisation
	D=document;
	//alert (D.body);
	//gk=window.Event?1:0; //Gecko;
	if (navigator.appName.indexOf('Explorer') > -1)
		gk = 0;
	else
		gk = 1;
	cpt=sx=sy=dx=dy=e=drag=lock=0;
	
	// déplacer l'image à la souris
	addEvent(D,"mousemove",function(e){
		px=gk?e.pageX:event.clientX+sx; //curseur x
		py=gk?e.pageY:event.clientY+sy; //curseur y
		if(drag){with(gdim.style){;left=px-dx+"px";top=py-dy+"px"};return false}
		}
	)
	
	// déplacer l'image au clavier
	addEvent(D,"keydown",function(e){
		tch=gk?e.which:event.keyCode;//alert(tch)
		// avec les flèches
		//if(tch==40||tch==98){gdim.style.top=gdim.offsetTop+50+'px';lock=1;return false}
		//if(tch==38||tch==104){gdim.style.top=gdim.offsetTop-50+'px';lock=1;return false}
		if(tch==37||tch==100){gdim.style.left=gdim.offsetLeft-50+'px'}
		if(tch==39||tch==102){gdim.style.left=gdim.offsetLeft+50+'px'}
		// cacher l'image avec la touche "Echap"
		if(tch==27){gdim.style.display='none';voirSelect('visible');}
	})
	
	D.onkeypress=function(){if(lock){lock=0;return false} else return true}
}

function addEvent(obj,evType,fn,capt){ // ajoute un événement sans écraser l'éxistant.
	if(obj.addEventListener){obj.addEventListener(evType,fn,capt);return true;} // NS6+
	else if(obj.attachEvent)obj.attachEvent("on"+evType,fn) // IE 5+
	else {return false;}
}

// correction IE : cache les éléments select
function voirSelect(v){
	elem=document.getElementsByTagName('select');
	if(!gk){for(i=0;i<elem.length;i++)elem[i].style.visibility=v;}
}

function grandeImage(){
		voirSelect('hidden');cpt=0;lien=this;
		//charge l'image dans le cache du navigateur.
		im=new Image();im.src=this.href;
		// renvoi le title
		im.title=this.title;
		//infos sur la fenêtre du navigateur
		try {
			fen_x=gk?innerWidth-20:db.clientWidth //l fenêtre
			fen_y=gk?innerHeight:db.clientHeight  //h fenêtre
		} catch(ex) {
			fen_x=db.clientWidth //l fenêtre
			fen_y=db.clientHeight  //h fenêtre
			gk=0;
		}
		sx=gk?pageXOffset:db.scrollLeft; //scroll h
		sy=gk?pageYOffset:db.scrollTop; //scroll v
		//montre le message de chargement.
		msg.firstChild.data='Chargement';
		gdim.style.display="none"
		with(msg.style){
			display="block";
			left=fen_x/2-msg.offsetWidth/2+sx+'px';
		    top=fen_y/2-msg.offsetHeight/2+sy+'px';
		};
		actif=setTimeout('controleChargement()',300);
		//désactive l'action normale du lien HTML
		return false
	}

// controle le chargement de l'image
function controleChargement(){
	//clearTimeout(actif); // arrête le compteur en cours
	cpt++;
	if(cpt>1&&im.width<30)msg.style.display="none"
	msg.firstChild.data+="."; // ajoute "." par seconde
	if(im.complete){
		// en fin de chargement l'image affichée
		with(im1){src=im.src;};
		// title reporté dans l'entête
		lx.firstChild.data=im1.alt=im1.title
		//montre la grande image et cache le message
		gdim.style.display="block"
		msg.style.display="none";
		lien.style.zIndex="100";
		sx=gk?pageXOffset:db.scrollLeft; //scroll h
		sy=gk?pageYOffset:db.scrollTop; //scroll v
		// centre l'image dans la fenêtre
		gdim.style.left=fen_x/2-gdim.offsetWidth/2+sx+'px';
		gdim.style.top=fen_y/2-gdim.offsetHeight/2+sy+'px';
	}
	else actif=setTimeout('controleChargement()',1000)
}

// Création des éléments de la fausse fenêtre
		// Conteneur :
function creationFausseFenetre() {
	gdim=D.createElement("div");D.body.appendChild(gdim);gdim.id="pop";
	lx=D.createElement("div");gdim.appendChild(lx);
			// message de chargement :
	msg=D.createElement("div");msg.appendChild(D.createTextNode(""));
	D.body.appendChild(msg);msg.id="msg";
			// Entête :
	lx.appendChild(D.createTextNode(""));lx.id="tet";
	avs=D.createElement("div");lx.appendChild(avs);
			// Pour fermer :
	avs.id="croix";avs.title="Fermer";avs.style.textAlign='center';avs.appendChild(D.createTextNode("X"));
	avs.onclick=function(){gdim.style.display='none';voirSelect('visible');}
			// image :
	im1=D.createElement("img");gdim.appendChild(im1);
	db=!D.documentElement.clientWidth?D.body:D.documentElement //quirk IE6
	
	// fonctions de drag&drop ajoutées à gdim
	gdim.onmousedown=function(){dx=px-gdim.offsetLeft;dy=py-gdim.offsetTop;drag=1;return false}
	gdim.onmouseup=function(){drag=0}
}

//évènements onclick ajoutés aux liens image
function initGIMG() {
	l=D.getElementsByTagName('a');
	for(var i=0;i<l.length;++i){
		if(l[i].href.search(/.jpg$|.jpeg$|.png$|.gif$/i)!=-1)l[i].onclick=grandeImage;
	}
}


//-->

