FMX8 XML loading order error

Hi,

I was hoping I could get some help with this code for a thumbnail image display , data loaded from an XML file, http://www.julianbenjamin.co.uk/.

All the thumbnails are loading on the stage correctly and in the correct order when playing movie locally, but as soon as I try Simulate Download or view the movie from the web the thumbnails lose there order.

after clicking the other categories several times the order seems to sort itself out, so im lost as to what is going on, I thought it might of been the size of the thumbnail size, but no luck after reducing…

can anyone help here is the code and the FLA is attached

function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild;
image = [];
itemname = [];
description = [];
thumbnails = [];

    total = xmlNode.childNodes.length;
    for (i=0; i<total; i++) {
        image* = xmlNode.childNodes*.childNodes[0].firstChild.nodeValue;
        itemname* = xmlNode.childNodes*.childNodes[1].firstChild.nodeValue;
        thumbnails* = xmlNode.childNodes*.childNodes[2].firstChild.nodeValue;
        description* = xmlNode.childNodes*.childNodes[3].firstChild.nodeValue;
        thumbnails_fn(i);
    }
    firstImage();
} else {
    content = "file not loaded!";
}

}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load(“commercial.xml”);
/////////////////////////////////////
listen = new Object();
listen.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
prevImage();
} else if (Key.getCode() == Key.RIGHT) {
nextImage();
}
};
Key.addListener(listen);
previous_btn.onRelease = function() {
prevImage();
};
next_btn.onRelease = function() {
nextImage();
};
/////////////////////////////////////
p = 0;
disPos = 1;
YPos = 0;
XPos = 0;
this.onEnterFrame = function() {
filesize = picture.getBytesTotal();
loaded = picture.getBytesLoaded();
//preloader._visible = true;
if (loaded != filesize) {
preloader.preload_bar._xscale = 100*loaded/filesize;
} else {
preloader._visible = false;
if (picture._alpha<100) {
picture._alpha += 10;
}
}
};
function nextImage() {
if (p<(total-1)) {
p++;
if (loaded == filesize) {
preloader._visible = true;
picture._alpha = 0;
picture.loadMovie(image[p],1);
name_txt.text = itemname[p];
desc_txt.text = description[p];
picture_num();
}
}
}
function prevImage() {
if (p>0) {
p–;
picture._alpha = 0;
picture.loadMovie(image[p],1);
name_txt.text = itemname[p];
desc_txt.text = description[p];
picture_num();
}
}
function firstImage() {
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[0],1);
name_txt.text = itemname[0];
desc_txt.text = description[0];
picture_num();
}
}
function picture_num() {
current_pos = p+1;
pos_txt.text = current_pos+" / "+total;

}
function thumbNailScroller() {
// thumbnail code!
this.createEmptyMovieClip(“tscroller”,1000);
scroll_speed = 10;
tscroller.onEnterFrame = function() {
if ((_root._ymouse>=thumbnail_mc._y) && (_root._ymouse<=thumbnail_mc._y+thumbnail_mc._height)) {
if ((_root._xmouse>=(hit_right._x-40)) && (thumbnail_mc.hitTest(hit_right))) {
thumbnail_mc._x -= scroll_speed;
} else if ((_root._xmouse<=(hit_left._x+40)) && (thumbnail_mc.hitTest(hit_left))) {
thumbnail_mc._x += scroll_speed;
}
} else {
delete tscroller.onEnterFrame;
}
};
}
function thumbnails_fn(k) {
thumbnail_mc.createEmptyMovieClip(“t”+k,thumbnail_mc.getNextHighestDepth());
tlistener = new Object();
tlistener.onLoadInit = function(target_mc) {

    target_mc._x = (target_mc._width+2)*disPos;

    target_mc.pictureValue = k;
    target_mc._alpha = 30;
    disPos++;
    //trace((target_mc._width+2)*disPos);
    //trace(k);
    target_mc.onRelease = function() {
        p = this.pictureValue-1;
        nextImage();
        preloader._visible = true;
    };
    target_mc.onRollOver = function() {
        this.onEnterFrame = function() {
            if (this._alpha&lt;100) {
                this._alpha += 10;
            } else {
                this._alpha = 100;
            }
        };
        thumbNailScroller();
        name_teaser.text = itemname[k];
    };
    target_mc.onRollOut = function() {
        this.onEnterFrame = function() {
            if (this._alpha&gt;30) {
                this._alpha -= 10;
            } else {
                this._alpha = 30;
            }
        };
        name_teaser.text = "";
    };
};
image_mcl = new MovieClipLoader();
image_mcl.addListener(tlistener);
image_mcl.loadClip(thumbnails[k],"thumbnail_mc.t"+k);

}