Preloader bei externer .jpg Datei!

thamoon

Grünschnabel
Ich hab hier folgendes Tutorial gefunden, welches durch einen Klick auf einen Button mit einem Preloader mit Ladebalken und Byteanzeige eine externe .JPG Datei in einen Movieclip lädt.

Code:
//--- Ladeanzeige unsichtbar machen ---------------
loader._visible = false;

//--- Ladefunktion --------------------------------
ladestatus = function () {
    // Einen onEnterFrame-Event erstellen, so dass nun
    // der Ladezustand kontinuierlich abgefragt und
    // angezeigt wird
    loader.onEnterFrame = function() {
        // Geladene und zu ladenede Bytetes abfragen
        geladen = _root.ladeziel.getBytesLoaded();
        zuladen = _root.ladeziel.getBytesTotal();
        // Sicherheitsabfrage, da ein leerer MC so ungefähr
        // 4 bis 5 Bytes hat und zu Verfälschungen führen könnte
        if (geladen>=10) {
            // Ladeanzeige sichtbar machen
            loader._visible = true;
            // Berechnung der bereits geladenen Prozent
            prozent = Math.round(geladen/zuladen*100);
            // Ausgabe im dynamischen Textfeld "prozentanzeige"
            this.prozentanzeige.text = prozent+" Prozent geladen";
            // Skalierung des Balkens anhand der Prozentzahl
            this.balken._xscale = prozent;
            // Wenn komplett geladen
            if (prozent>=100) {
                // den EnterFrame-Event löschen um Performance zu sparen
                delete this.onEnterFrame;
                // die Ladeanzeige wieder unsichtbar machen
                this._visible = false;
            }
        }
    };
};

//--- Aktionen für die Button_MCs um externe Daten
//--- in den Ziel-MC "ladeziel" zu laden ---------
lade_1.onPress = function() {
    // Ladebefehl
    ladeziel.loadMovie("film1.swf");
    // Aufruf der Funktion für die Preloaderanzeige
    ladestatus();
};
lade_2.onPress = function() {
    ladeziel.loadMovie("film2.swf");
    ladestatus();
};
lade_3.onPress = function() {
    ladeziel.loadMovie("bild3.jpg");
    ladestatus();
};

Wie muss ich diese AS so verändern, das der Vorgang, welcher jetzt durch den Klick auf einen Button ausgeführt wird, einfach so anfängt, d.h. wenn der Film das Schlüsselbild "erreicht" welcher den AS Code enthält !?
 
Einfach dieses:
PHP:
ladeziel.loadMovie("film1.swf");
ladestatus();
In das Schlüsselbild schreiben - ohne onPress-Ereignis.

Gruß
.
 
Das hatte ich auch schon ein paar mal Versucht, doch der Preloader wird dennoch nicht angezeigt...Ich hab zum Testen mal einfach den Standartcode aus dem Tutorial geändert;

PHP:
//--->
ladeziel.loadMovie("film1.swf");
ladestatus();
//<---
loader._visible = false;
loader.onEnterFrame = function() {
geladen = _root.ladeziel.getBytesLoaded();
zuladen = _root.ladeziel.getBytesTotal();
if (geladen>=10) {
loader._visible = true;
prozent = Math.round(geladen/zuladen*100);
this.prozentanzeige.text = prozent+" Prozent geladen";
this.balken._xscale = prozent;
if (prozent>=100) {
delete this.onEnterFrame;
this._visible = false;
}
}
};
};
// u.s.w.
 
Ja, damit hast Du die Funktion "ladestatus" entfernt und die onEnterFrame-Methode direkt in die Zeitleiste geschrieben. Geht natürlich, aber jetzt kannst Du den Preloader nicht mehr zum Laden von andern Inhalten "zwischendurch" verwenden.

Gruß

P.S.: Sag mal: Rückst Du Deinen Code tatsächlich nicht ein? :eek:
.
 
Danke, für die Antwort :)
Und normalerweise rück ich es schon ein, nur in diesem Fall hab ich es nicht gemacht, da es ja vor allem ein ziemlich kleiner code ist und meiner Meinung nach in diesem Fall nicht zu..."Orientierungs"problemen führt :)
MfG tm
 
Zurück