Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-07-2004, 11:24   #1 (permalink)
[ tiger ]
 
Benutzerbild von aktionkuba
 
Registriert seit: Dec 2002
Ort: bei Stuttgart
Beiträge: 327
erweiterter Preloader

Hallo,

ich arbeite gerade an einer dynamischen bildergalerie. funktioniert auch alles supertoll. meine frage bezieht sich auf den preloader. ich mache das so, dass er den balken nach dem laden kurz ausfadet. blöd ist jetzt halt, dass wenn das bild schon geladen wurde, dass man immer noch das ausfaden des preloaders, der ja nicht mehr gerbraucht wird, sieht.

meine idee war die, dass ich im allerersten frame von dem bild-swf eine abfrage mache, die überprüft, ob das bild schonmal komplett geladen wurde. ich stell mir das so vor:

Code:
 
if ( container.getBytesLoaded() >= container.getBytesTotal() )
{
 gotoAndStop("bild_anzeigen");
}
else
{
 gotoAndStop("loader");
}
aber es klappt nicht immer. ich habe die vermutung, dass es dadran liegt, dass er erst den container laden muss. also habe ich das ganze in einen enterframe gelegt und gesagt erst wenn container geladen ist, dann das checken. aber irgendwie hat das auch net gefunzt.

wer weiss rat?

steph
__________________
let freedom ring with a shotgun blast
aktionkuba ist offline   Mit Zitat antworten
Alt 07-07-2004, 11:32   #2 (permalink)
Der Verpeiler
 
Registriert seit: Jun 2004
Beiträge: 99
Unter FlashMX ist irgendwie alles was mit dem Thema Preloaden zu tun hat verknaubt...

Ich würde das so lösen:
ActionScript:
  1. if ( (container._width != undefined) && (container._width > 0) )
  2. {
  3.  gotoAndStop("bild_anzeigen");
  4. }
  5. else
  6. {
  7.  gotoAndStop("loader");
  8. }

Ein geladenes Bild hat auf jeden Fall wenn es komplett da ist eine Breite.

Viel Glück
__________________
Know your scope.
mnemonic ist offline   Mit Zitat antworten
Alt 07-07-2004, 14:23   #3 (permalink)
[ tiger ]
 
Benutzerbild von aktionkuba
 
Registriert seit: Dec 2002
Ort: bei Stuttgart
Beiträge: 327
also kann mir das jemand bestätigen mit der breite? ich dachte, der muss quasi den bildheader laden und dann weiss er wie breit es ist.... also irgendwie ist mir das sehr schwammig.

irgendwer muss doch dasselbe problem schon gehabt haben

steph


EDIT

da fällt mir ein, was haltet ihr von einer lösung mit einem array. wenn das bild das erste mal komplett geladen wurde, wird einfach der name zB in den array gepusht und dann beim nexten aufrufen wird gecheckt ob das darzustellende bild in der liste ist. wenn ja muss es nicht mehr geladen werden... wär doch ne idee....
__________________
let freedom ring with a shotgun blast

Geändert von aktionkuba (07-07-2004 um 14:26 Uhr)
aktionkuba ist offline   Mit Zitat antworten
Alt 08-07-2004, 08:19   #4 (permalink)
[ tiger ]
 
Benutzerbild von aktionkuba
 
Registriert seit: Dec 2002
Ort: bei Stuttgart
Beiträge: 327
ich schieb den thread mal nach oben. so ein wichter aspekt wie der erweiterte preloader muss doch diskutiert werden. *gg


*falls das schieben unerwünscht ist, einfach bescheid geben.

steph
__________________
let freedom ring with a shotgun blast
aktionkuba ist offline   Mit Zitat antworten
Alt 09-07-2004, 06:35   #5 (permalink)
--???--
 
Registriert seit: Jun 2004
Beiträge: 185
Ist echt super das mit dem preloader doch container ist das der (instance)name vom bild?



mfg Markus!
Markus0011 ist offline   Mit Zitat antworten
Alt 09-07-2004, 11:35   #6 (permalink)
this.onEnterFame
 
Benutzerbild von RedSaint
 
Registriert seit: Feb 2002
Ort: Jetzte: Stuttgart
Beiträge: 1.666
hi aktionkuba,


also das problem ist wohl dass je nach servergeschwindigkeit und verbindung des users die _getbytetotal nicht schnell genug erkannt werden ...
damit sind dann erstmal totalbytes==0 und bytesloaded==0 also sind
totalbytes==bytesloaded und der loader greift ins leere ...


ich fang das immer so ab:

PHP-Code:
bytes_geladen container.getBytesLoaded();
bytes_gesamt container.getBytesTotal();
if (
bytes_geladen>1) {
    
prozent math.ceil((bytes_geladen/bytes_gesamt)*100);
    
balken.gotoAndStop(prozent);
    if (
prozent == 100) {
        
this.gotoAndPlay("end");
    }


also erst den laoder laufen lassen, wenn flas erkannt hat dwie groß deine file wirkich ist ... sollte denn auch funzen ...


gruß

_RED_
__________________
_may the force be with you_
.................................................. .........
on Fire 2008
.................................................. .........

Easy Crime available here
.................................................. .........

_RED_ + Flashforum = Big Love
.................................................. .........

A.K.A: ACHIM 0815
RedSaint ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 11:11 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele