allora ho un problema al quanto strano

ho creato una funzione di preload per ridimensionare il clip una volta caricata l'immagine funziona ma solo per i primi 2 record poi non va più

qui il link per vedere

www.4ward.it/test/mita
sezione camere

il codice incriminato in rosso

codice:
fscommand ("allowscale", "false");
System.useCodepage = true;
filexml = "DataDB/camere.asp?PageNumber=1";

paginainiziale="01";

ApriXML();
function ApriXML () {

	_root.loading = "Connecting to Data Base for XML data...";
	mioxml = new XML();
	myarray = new Array();
	mioxml.load(filexml + "&rnd=" + random(999999));
	mioxml.onLoad = ElaboraXML;
	function ElaboraXML (success) {
		if (mioxml.loaded) {

			myarray = mioxml.childNodes;
			Dati();
			MenuPag();
			CreaTabelle();
			
			delete myarray;
			delete mioxml;

							}
								   };
};
//funzione preload
function preload(clip, width, height){
car = clip.getBytesLoaded();
tot = clip.getBytesTotal();
if(car == tot && tot>24){
clearInterval(b);
clip._width = width;
clip._height = height;
}
}; 

// Funzione che prende i dati XML e li mette in degli Array
function Dati () {

// Array che contengono i Dati -----------------------
	idnome = new Array();
	hdescrizione = new Array();
	hfoto = new Array();
	descrizione = new Array();
	foto = new Array();
// ---------------------------------------------------

	for (k=0; k<=myarray.length; k++) {

		if (myarray[k].nodeName == "nome") {
			idnome.push(myarray[k].attributes.id);
		} else if (myarray[k].nodeName == "descrizione") {
			hdescrizione.push(myarray[k].attributes.h);
			descrizione.push(myarray[k].childNodes.toString());
		} else if (myarray[k].nodeName == "foto") {
			hfoto.push(myarray[k].attributes.h);
			foto.push(myarray[k].childNodes.toString());
		} else if (myarray[k].nodeName == "totrec") {
			_root.totrec=myarray[k].childNodes.toString();
													}
					
	
										};

};



// Funzione che crea il menù delle pagine con gestione dell'infinito

function MenuPag(){

		numero = Math.floor((totrec-0.5)/3+1);
		nmaxpag = numero;

		for (i=0; i<numero; i++){
		barranav.attachMovie("page", "pagine"+i,i+100);
		barranav["pagine"+i]._x=10+i*25;
		barranav["pagine"+i]._y=30;
		k=i+1;
		if (k<=9){app="0"+k}else{app=k};
		barranav["pagine"+i].pagina=app;
		barranav["pagine"+i].PageNumber = k;
		if (k<=9){nmaxpag ="0"+ k;} else {nmaxpag=k};
		_root.loading = paginainiziale+"/"+nmaxpag+" pagine -  Articoli presenti n "+ totrec ;	
			
								  };
};



// Funzione che Crea i clip 
// e li posiziona sullo stage del filmato

function CreaTabelle () {
	for (i=0; i<idnome.length; i++) {


			attachMovie("clipmsg", "clipmsg"+i, i);
			
			// Attribuisco la coordinata X e Y
			_root["clipmsg"+i]._x = 220;
			_root["clipmsg"+i]._y = 300+i*115;
			// Passo al clip le variabili che ho preso dall'XML e messo negli Array
			_root["clipmsg"+i].idnome = idnome[i];
			_root["clipmsg"+i].hdescrizione = hdescrizione[i];
			_root["clipmsg"+i].hfoto = hfoto[i];
			_root["clipmsg"+i].descrizione = descrizione[i];
			_root["clipmsg"+i].foto = foto[i];
			//_root["clipmsg"+i].foto = "> ingrandisci";
//			_root["clipmsg"+i].foto = "Dettagli >";
			_root["clipmsg"+i].mc.loadMovie(foto[i]);
			//Attribuisco dimensioni all'immagine
			b = setInterval(preload, 50, _root["clipmsg"+i].mc, 150, 100); 
			};
};