Preloader? Ich finde den Fehler nicht!

Frusciante

Grünschnabel
Hallo, ich habe einen Ladebalkenpreloader in meine Hompage eingebaut. Ursprünglich wurde dieser nach der Anzahl geladener Bilder gesteuert. Nun hab ich ein bisschen daran rumgebastelt damit der Balken genauer wird und wollte ihn nach der Anzahl geladener bytes steuern lassen. Kenne mich nicht so gut mit AS aus und bin desswegen einfach nach Logik und Englischkentnissen gegangen. Doch irgendwo scheint ein Fehler zu sein denn der Balken wird nun gar nicht mehr angezeigt. Seht ihr auf anhieb vlt. den Fehler?

lg Frusciante

Code:
Frame 1:  

if (getBytesLoaded=getBytesTotal) {
	gotoAndPlay(3);
}

Frame 2:

prozent = Math.ceil((getBytesLoaded/getBytesTotal)*100);
ladebalken.gotoAndStop(prozent);
gotoAndPlay(1);
 
Hi,

ein Blick in die Doku wird Dich davon überzeugen, dass z.B. getBytesLoaded keine Eigenschaft, sondern eine Methode des MovieClip-Objekts ist, und daher z.B. folgendermaßen aufgerufen werden muss:
Code:
this.getBytesLoaded();

Gruß
.
 
Hm, was genau macht "this"? Ich habe es jetzt mal ein bisschen umgeschrieben, denke mal das ist umständlicher, verstehe aber nicht warum es jetzt nicht funktioniert.

Code:
Frame 1:

_global.bytesloaded = this.getBytesLoaded();
_global.bytestotal  = this.getBytesTotal();

if (bytesloaded=bytestotal) {
	gotoAndPlay(3);
}

Frame 2:

prozent = Math.round((bytesloaded/bytestotal)*100);
ladebalken.gotoAndStop(prozent);
gotoAndPlay(1);

Bin auch kräftig in der Macromedia Hilfe unterwegs, aber werde dort nur selten auf spezielle Fragen fündig.

lg Frusciante
 
Hi,

if (bytesloaded=bytestotal) {
Dir sollte klar sein, dass Du damit der Variable "bytesloaded" den Wert von "bytestotal" zuweist. Vergleiche werden mit zwei Gleichheitszeichen notiert.

Ausserdem musst Du darauf warten, bis beide Werte größer als 0 sind, da getBytesLoaded zu Beginn gerne mal 0 und getBytesTotal den Wert - 1 zurückgibt; damit hättest Du Deine Bedingung erfüllt und würdest im Film weitergehen, ohne dass er komplett geladen ist.

Wenn Du hier im Forum nach "Preloader" suchst, findest Du hunderte Threads, die sich genau mit dieser Frage befassen, weshalb ich es hier für unnötig halte, den korrekten Code noch einmal zu notieren.

Ein Posting in diesem Thread von Dir ist gestern schon von einem Moderator gelöscht worden, also halte Dich bitte an unsere Regel, eigene Themen nicht zu pushen. Bei einem nochmaligen Verstoß gegen diese Regel wird nicht nur das betreffende Thema gelöscht, sondern Du riskierst auch Deinen Account.

Gruß
.
 
Zurück