| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Sep 2004
Beiträge: 69
| XML Fotogalerie - Problem beim laden
Hi, ich komme beim dynamischen laden vordefinierter Bilder aus einer XML Datei keinen preload hin. Das auslesen klappt prima - jedoch harkt es nach Auswahl eines anderen Bildes... Vielleicht könnt Ihr mir auf die sprünge helfen.. Hauptfilm: Code: function Holding(id, imgWidth, imgHeight, filename, setname) {
this.id = id;
this.imgWidth = imgWidth;
this.imgHeight = imgHeight;
this.filename = filename;
this.setName = setname;
}
// Thumbnails + Zufallswiedergabe
function populateThumbs(group) {
group = "set0" + group;
folder = _root[group][0].setName;
for (i = 1; i <= 10; i++) {
unloadMovie(this["thumb0" + i].imgHold);
eval("thumb0" + i).newBorder.dwn = 1;
eval("thumb0" + i).newBorder.go = 1;
eval("thumb0" + i).mainBtn.enabled = false;
eval("thumb0" + i).active = "no";
}
photoCount = _root[group].length;
for (i = 0; i < photoCount; i++) {
thumbnail = _root[group][i].filename + "_thumb.jpg";
targ = this["thumb0" + (i + 1)];
targ.mainBtn.enabled = true;
loadMovie("gallery/" + folder + "/" + thumbnail, targ.imgHold);
targ.newBorder.go = 1;
targ.newBorder.up = 1;
targ.active = "yes";
}
randPhoto = random(_root["set0" + activeSet].length);
if (randPhoto < 1) {
randPhoto = 1;
}
viewPhoto(randPhoto);
}
// Navigation / Bild Medium (normale Ansicht)
function viewPhoto(targ) {
activePic = targ;
targ = targ - 1;
group = "set0" + activeSet;
folder = _root[group][0].setName;
medium = _root[group][targ].filename + "_med.jpg";
j++;
photoHoldName = "photoHold" + j;
detail.attachMovie("blankHold", photoHoldName, j);
detail[photoHoldName].loadMovie("gallery/" + folder + "/" + medium);
if (j > 1) {
trace("PLAYING AT FRAME 2");
detail[photoHoldName]._alpha = 0; // Medium Bild ausblenden
overlay.gotoAndPlay(2); // Overlay Effekt abspielen
imgPreload.dest = "_parent.detail.photoHold" + j;
}
if (activePic >= _root[group].length) {
nextPic = 1;
}
else {
nextPic = activePic + 1;
}
if (activePic == 1) {
prevPic = _root[group].length;
}
else {
prevPic = activePic - 1;
}
}
// Status in der Navigationsleiste wechseln
function changePreloader(bool) {
if (bool == 1) {
imgPreload._xscale = 0;
imgPreload._visible = 1;
navPrev._visible = 0;
navNext._visible = 0;
}
else {
overlay.gotoAndStop(1);
overlay._alpha = 100;
imgPreload._visible = 0;
navPrev._visible = 1;
navNext._visible = 1;
}
}
galleryParsed = 0;
//XML
galleryXML = new XML();
galleryXML.ignoreWhite = true; // Leerzeichen ignorieren
galleryXML.load("gallery.xml");
galleryXML.onLoad = parseGallery;
stop(); Script auf dem Preloader (imgPreloader): Code: onClipEvent (load) {
_xscale = 0;
goo = 0;
}
// Medium Bild preloaden
onClipEvent (enterFrame) {
if (goo == 1) {
loadd = dest.getBytesLoaded();
totall = dest.getBytesTotal();
percent = int(loadd / totall * 100);
if (totall > 0) {
_xscale = percent;
if (percent > 99) {
goo = 0;
_parent.imgWatch.dest = dest;
_parent.imgWatch.go = 1;
}
}
}
} MovieClips mit einem Überblendeffekt, der über das "Medium Bild" gelegt ist (overlay): Code: _parent.changePreloader(1); _parent.imgPreload.goo = 1; stop(); "Vor" Button: Code: on (release) {
viewPhoto(nextPic);
} "Zurück" Button: Code: on (release) {
viewPhoto(prevPic);
} MovieClip um den Status des Überblendeffektes und des Preloaders zu ändern (imgWatch): Code: onClipEvent (load) {
go = 0;
}
// Overlay Effekt nach preloading
onClipEvent (enterFrame) {
if (go == 1) {
up = 0;
t = t + 5;
dest._alpha = t;
_parent.overlay._alpha = 100 - t;
if (t == 100) {
_parent.changePreloader(0);
go = 0;
t = 0;
}
}
} ...und hier noch die XML Datei (Script für die "Set"-Auswahl habe ich oben ^^ nicht hingeschrieben): Code: <gallery setTotal="3">
<set1 count="4" name="gallery1">
<photo width="500" height="800">008</photo>
<photo width="500" height="800">007</photo>
<photo width="500" height="800">006</photo>
<photo width="500" height="800">005</photo>
</set1>
<set2 count="2" name="gallery2">
<photo width="700" height="500">004</photo>
<photo width="500" height="700">003</photo>
</set2>
<set3 count="2" name="gallery3">
<photo width="500" height="800">002</photo>
<photo width="500" height="800">001</photo>
</set3>
</gallery> Geändert von crustymalte (19-11-2005 um 20:14 Uhr) |
| | |
| | #2 (permalink) |
| Euer Nuser Registriert seit: Apr 2004 Ort: Sand-City
Beiträge: 3.483
|
Wo pushst'n deine XML in ein Array? --pp
__________________ Die Krinimalpolizei gibt bekannt: |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Sep 2004
Beiträge: 69
|
hoppla - hier: Code: function parseGallery(success) {
if (success) {
setCount = this.firstChild.attributes.setTotal;
var e = this.firstChild.firstChild;
for (i = 0; i < setCount; i++) {
id = 0;
if (e.nodeName == "set" + (i + 1)) {
f = e.firstChild;
_root["set0" + (i + 1)] = new Array();
while (f != null) {
id++;
var h = new Holding(id, f.attributes.width, f.attributes.height, f.firstChild.nodeValue, e.attributes.name);
_root["set0" + (i + 1)].push(h);
f = f.nextSibling;
}
}
e = e.nextSibling;
}
galleryParsed = 1;
}
} |
| | |
| | #4 (permalink) |
| Euer Nuser Registriert seit: Apr 2004 Ort: Sand-City
Beiträge: 3.483
|
Hm ... Was/wie genau hakt's denn? --pp
__________________ Die Krinimalpolizei gibt bekannt: |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Sep 2004
Beiträge: 69
|
nach drücken des next buttons, wird der overlay mc abgespielt - am ende stoppt er und sollte eigentlich folgendes ausführen Code: _parent.changePreloader(1); _parent.imgPreload.goo = 1; die if schleife wird noch abgespielt Code: function changePreloader(bool) {
if (bool == 1) {
imgPreload._xscale = 0;
imgPreload._visible = 1;
navPrev._visible = 0;
navNext._visible = 0;
}
else {
overlay.gotoAndStop(1);
overlay._alpha = 100;
imgPreload._visible = 0;
navPrev._visible = 1;
navNext._visible = 1;
}
} so soll es ablaufen: 1. overlay mc abspielen/ navigation ausblenden 2. laden 3. navigation und das neue bild einblenden |
| | |
| | #7 (permalink) |
| Euer Nuser Registriert seit: Apr 2004 Ort: Sand-City
Beiträge: 3.483
|
Jawohl. ![]() --pp
__________________ Die Krinimalpolizei gibt bekannt: |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |