Preloader zu schnell

WaZZkeSS

Erfahrenes Mitglied
Hallo!

Ich wollte mal obes eine Möglichkeit irgendwie eine Schleife zu bauen, z.B.: Wenn zu ladente seite größer als 2 oder 3 MB ist das gehe nicht die Schleife, ansonsten soll eine Schleife verwendet werden damit man den Preloader sieht. Ist zwar eine blöde frage, aber ich hoffe das mir trotzdem jemadn helfen kann. Mit besten Dank


WaZZkeSS
 
Hallo,

nunja, eigentlich funktionieren die meisten Preloader nach diesem Muster. Als Bedingung nimmt man da die MovieClip-Eigenschaften getBytesLoaded und getbytesTotal. da sollte es auch möglich sein, andere Bedingungen daran zu binden:

Code:
this.meinMovieClip.loadMovie("meine.swf", 0);
this.onEnterFrame = function () {

    if (meinMovieClip.getBytesTotal()) {
        if (meinMovieClip.getBytesTotal() > 3000000) ///nicht preloaden
        else //preloaden
        delete this.onEnterFrame;
    }
}
gruss
 
Danke für die Antwort!
Allerdings stehe ich jetzt vor einem ganz anderen Problem.
Wenn ich die zwei Schlüsselbilder vom Loader nehme und in einer anderen Seite einbinde, wird der loader nicht angezeigt. Das gleiche ist auch wenn ich eine neue Datei öffne, und in die erste Szene den Loader hinzufüge und in die zweite Szene den Hauptfilm. Da passiert auch nichts. Auf was muss ich achten bzw. was mache ich falsch.

Danke für die Antwort.
WaZZkeSS
 
Hallo,

das verkommt, ohne die genaueren Umstände zu kennen, zum Ratespiel. Poste doch mal deine Dateien oder die relevanten Auszüge.

gruss
 
Hy!
In der Szene 1, Bild 1 habe ich foldes für den Proloader.
Code:
if (_framesloaded >= _totalframes){
    gotoAndPlay("Szene 2",1);
}    
else{    
    var geladen = math.round(this.getBytesLoaded()/1024);
    var gesamt = math.round(this.getBytesTotal()/1024);
    speed = int(getBytesLoaded()/getTimer())  + "kb/s";
    prozent = math.round((geladen/gesamt)*100);
    anzeige.balken._xscale=prozent;
    anzeige.balken_2._xscale=prozent;
    }

In der anderen Szene habe ich ein MoviClip. Im Movieclip spielt sich der eigentlicher Film ab. Im MoviClip habe ich einen Button, mit der man den film abspielt. Ich hoffe das dies hilft,da di datei ca. 4MB hat und ich keine Möglichkeit habe diese Online zu stellen. Danke im vorraus.

WaZZkeSS
 
Hallo,

was ich bei dem Preloader vermisse, ist ein Loop, d.h. eine onEnteframe-Funktion oder zumindest eine gotoAndStop-Schlaufe, denn das Script wird ohne mehrfaches Abarbeiten nicht greifen. Zudem brauchst du natürlich in jedem Fall auch einen MovieClip mit Instanznamen "balken", der wiederum zwei MovieClips "balken" und "balken_2" beinhaltet.

Das Script hab ich nun leicht angepasst, allerdings möcht ich dir vom Gebrauch von Szenen abraten, deshalb ist der Loader für den Einsatz auf dem ersten Keyframe einer Haupt-Zeitleiste geschrieben. Von oben erwähnten MovieClips geh ich aber ebenfalls aus:

Code:
var speed;
var prozent;

this.onEnterFrame = function () {
    if (getBytesTotal()) {
         var geladen = Math.round (getBytesLoaded()/1024);
         var gesamt = Math.round (getBytesTotal()/1024);
         prozent = math.round((geladen/gesamt)*100);     
         speed = Math.round (geladen()/getTimer())  + "kb/s";
         anzeige.balken._xscale=prozent;
         anzeige.balken_2._xscale=prozent;
         if (geladen == gesamt) {
              delete this.onEnterFrame;
              gotoAndStop(2);                       //<==Hier deine Anweisungen
         }
    }
}

gruss
 
Hy!
Die MC existieren (balken,balken_2 usw.) Komisch ist das der Preloader auf der Datei wo ich diese erstellt habe funktioniert aber bei anderen nicht.

Die Variablen Prozent und Speed sind Textfelder, deswegen habe ich diese nicht deklariert und die Werte direkt den Textfeldern zugewiesen.


was ich bei dem Preloader vermisse, ist ein Loop, d.h. eine onEnteframe-Funktion oder zumindest eine gotoAndStop-Schlaufe, denn das Script wird ohne mehrfaches Abarbeiten nicht greifen
Werde ich mal probieren, und danke.



WaZZkeSS
 
Zurück