Hallo!
Ich habe zwei Probleme mit einer XML-Gallery.
Ich lade in Textfelder jeweils aus einem XML-File die Daten für ein bestimmtes Produkt. Die Felder für Hersteller und Material werden dabei gefüllt, die anderen 4 sind undefined. Obwohl sie auf gleiche Weise geladen werden.
Außerdem lade ich sowohl thumbnails als auch ein großes Bild des Produktes, zusätzlich mag ich aber auch ein Logo nachladen, dies funktioniert ebenfalls nicht...
Kann das Skript vielleicht mal jemand unter die Lupe nehmen? Mir ist das ein komplettes Rätsel...
Danke!!!!!!
PHP-Code:
this._lockroot = true;
function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild;
image = [];
thumbnails = [];
description = [];
model = [];
style = [];
material = [];
price = [];
logo = [];
total = xmlNode.childNodes.length;
for (i=0; i<total; i++) {
image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
thumbnails[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
description[i] = xmlNode.childNodes[i].childNodes[2].firstChild.nodeValue;
model[i] = xmlNode.childeNodes[i].childNodes[3].firstChild.nodeValue;
style[i] = xmlNode.childeNodes[i].childNodes[4].firstChild.nodeValue;
material[i] = xmlNode.childNodes[i].childNodes[5].firstChild.nodeValue;
price[i] = xmlNode.childeNodes[i].childNodes[6].firstChild.nodeValue;
logo[i] = xmlNode.childNodes[i].childNodes[7].firstChild.nodeValue;
thumbnails_fn(i);
}
firstImage();
} else {
content = "file not loaded!";
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("images.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;
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 += 1.5;
}
}
};
function nextImage() {
if (p<(total-1)) {
p++;
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[p], 1);
logo.loadMovie(logo[p], 1);
herst_txt.text = description[p];
mod_txt.text = model[p];
style_txt.text = style[p];
mat_txt.text = material[p];
price_txt.text = price[p];
picture_num();
}
}
};
function prevImage() {
if (p>0) {
p--;
picture._alpha = 0;
picture.loadMovie(image[p], 1);
logo.loadMovie(logo[p], 1);
herst_txt.text = description[p];
mod_txt.text = model[p];
style_txt.text = style[p];
mat_txt.text = material[p];
price_txt.text = price[p];
picture_num();
}
}
function firstImage() {
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[0], 1);
logo.loadMovie(logo[0], 1);
herst_txt.text = description[p];
mod_txt.text = model[p];
style_txt.text = style[p];
mat_txt.text = material[p];
price_txt.text = price[p];
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 = 2;
tscroller.onEnterFrame = function() {
if ((_root._ymouse>=thumbnail_mc._y) && (_root._ymouse<=thumbnail_mc._y+thumbnail_mc._height)) {
if ((_root._xmouse>=(hit_right._x-25)) && (thumbnail_mc.hitTest(hit_right))) {
thumbnail_mc._x -= scroll_speed;
} else if ((_root._xmouse<=(hit_left._x+25)) && (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 = hit_left._x+(target_mc._width+5)*k;
target_mc.pictureValue = k;
target_mc.onRelease = function() {
p = this.pictureValue-1;
nextImage();
};
target_mc.onRollOver = function() {
this._alpha = 50;
thumbNailScroller();
};
target_mc.onRollOut = function() {
this._alpha = 100;
};
};
image_mcl = new MovieClipLoader();
image_mcl.addListener(tlistener);
image_mcl.loadClip(thumbnails[k], "thumbnail_mc.t"+k);
}