Hilfe bei slide_gallery_zoom (Sammelthread)

sexmagic

Gesperrt
Hallo Jungs,
erstmal muss ich sagen saubere Arbeit beim neuen Forum Design, gefällt mir sehr gut!!

So nun zu meinem Problem, ich habe diese tolle Flash Slide_Gallery aus dem Sammelthread gefunden und möchte sie gerne ändern damit die Bilder Dynamisch ausgelesen werden, da ich aber so gut wie keine Ahnung von flash habe wollte ich hier um Hilfe bitten.

Also ich habe nun erstmal eine .txt erstellt in der ich dann durch eine PHP Script die Bilder aus einem Ordner auslesen lasse und in diese txt schreiben lasse.

Ich habe bereits mehrere Tutorilas gefunden zum Thema externe txt Dateien auslesen lassen.

Mein Problem besteht darin das ich die Variablen zwar auslesen kann aber da ich das in eine Funktion ausgelagert in einer for Schleife mache die Werte nur in der Schleife verwenden kann, ich habe dann bischen rumprobiert das Array als _global zu deklarieren aber keine Chance.

Ich poste mal meinen Code:
Code:
//Start des auslesens der Textdatei//////////////////////////////
images = new Array();

function geladen(erfolgreich) 
{	
        if(erfolgreich) 
		{
             _level0.pics = this.pics.split(",");//in Array splitten
             var len = _level0.pics.length;//Länge des Arrays
			 for(var i=0;i<len;i++)
			 {
				trace(images[i] = _level0.pics[i]);
			 }
        
		}else{
                trace("Fehler beim Laden");
        }
}  
lv = new LoadVars();//Instanz erstellen
lv.onLoad = geladen;//Callback setzen
lv.load("img.txt",lv,"POST");//und den Request starten

//Ende des auslesens der Textdatei///////////////////////////////

var thumbnails = images; //Um diese Zeile gehts, ich müsste das images Array in thumbnails schreiben
...

So damit habe ich die Werte nun in images[] Array, leider ist dies dann auserhalb der Schleife nicht verwendbar.

Original schaut das ganze so aus:
Code:
var images = new Array("testbilder/bild1.jpg", "testbilder/bild2.jpg", "testbilder/bild3.jpg", "testbilder/bild4.jpg", "testbilder/bild5.jpg", "testbilder/bild6.jpg", "testbilder/bild7.jpg");

var thumbnails = images; // Wahlweise hier ein Array mit Vorschaubildern

Ich bin für jeden noch so kleinen Tipp dankbar.

;)
 
Hi,

das das Laden externer Daten in Flash asynchron abläuft, wird die Zeile
Code:
var thumbnails = images;
auf jeden Fall ausgeführt, bevor die onLoad-Methode des LoadVars-Objekts aufgerufen wird.

Du musst die Zuweisung (und die Übergabe an den "slider"-MovieClip) innerhalb der onLoad-Methode ausführen:
Code:
function geladen(erfolgreich) 
{	
        if(erfolgreich) 
		{
             _level0.pics = this.pics.split(",");//in Array splitten
             var len = _level0.pics.length;//Länge des Arrays
			 for(var i=0;i<len;i++)
			 {
				trace(images[i] = _level0.pics[i]);
			 }
        
		}else{
                trace("Fehler beim Laden");
        }
        slider.setGal(images, images);
}

Entferne dafür die Originalzeile, sowie die einmalig aufgerufene onEnterFrame-Methode mit der Übergabe aus dem Code.

Gruß
.
 
Spitze

Danke Tobias, also diese Zeile hab ich nicht kapiert:
Code:
Entferne dafür die Originalzeile, sowie die einmalig aufgerufene onEnterFrame-Methode mit der Übergabe aus dem Code.

Aber ich habe nun
Code:
slider.setGal(images, images);
einfach in die Schleife eingebaut und in der Preview hat es schon mal wunderbar funktioniert, muss ich denn noch was änder wenn die Preview hingehauen hat?
Oder kannst du mir nochmal genauer erklärene was ich entfernen muss?
EDIT: Hat leider doch nicht so richtig funktioniert, es wird zwar angezeigt aber nach ein paar Bilder bleibt der Scroller nun stehen und ich kann die thumbs nichtmehr Sliden lassen :(

Weiters wollte ich noch fragen ob du einen Tipp für mich hast wie ich noch angeben könnte welcher Ordner ausgelesen wird, ich würde gerne im Querystring einen Dateinamen angeben. Dieser soll in Flash per Get abgefangen werden und dann soll die Gal den zuständigen Ordner verwenden.

So jedenfalls hab ich mir das vorgestellt, ist sicher nicht die Schönste lösung aber erstmal die einfachste für mich denke ich.


Ich danke dir sehr Tobias für deine Hilfe!

Gruss

sm
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück