Avatar billede mmohr Nybegynder
15. januar 2004 - 09:56 Der er 12 kommentarer og
1 løsning

preload variabel

jeg har et tekst felt i min flash, hvor jeg henter en variabel og smider ind fra et php script, men der går ofte op til flere sekunder før teksten kommer frem i feltet...

Jeg bruger det preload actionscript vist hernunder til at loade hele movien med, hvordan putter jeg min variabel ind her, så den bliver loadet med, og hvordan henter jeg den frem når den skal smides i textfeltet senere?????

loader script:

function preload(preloadContent) {
    // Turn on and initialize the preloader
    preloader._visible = 1;
    preloader.bar._xscale = 0;
    preloader.display.text = "0%";
    // Set an interval to update the loading progress
    intervalId = setInterval(preloadCallback, 5, preloadContent);
}
function preloadCallback(preloadContent) {
    // Initialize variables to track the loading progress
    var download = 0;
    var downloaded = 0;
    var percentLoaded = 0;
    // Grab the loaded and total bytes of the preloadContent
    download = preloadContent.getBytesTotal();
    downloaded = preloadContent.getBytesLoaded();
    percentLoaded = Math.ceil(downloaded/download*100);
    // Update the preloader display
    preloader.display.text = percentLoaded+"%";
    preloader.bar._xscale = percentLoaded;
    updateAfterEvent();
    // See if we're finished
    if (downloaded == download && download>0) {
        // delete the interval and turn off the preloader
        clearInterval(intervalId);
        preloader._visible = 0;
        gotoAndStop(2);
    }
}

jeg henter min variabel nu, på denne måde:

l = new LoadVars();
l.load("listnews.php");
l.onLoad = function(s) {
    if (s) {
        content.html = true;
        content.htmlText = this.minVar;
    }
}

håber det er nogenlunde lige til!!
Avatar billede mat Nybegynder
15. januar 2004 - 10:05 #1
umiddelbart kan du vel få din onLoad på din LoadVars til at fortælle om variablerne er nået frem. Noget i stil med:

l = new LoadVars();
l.load("listnews.php");
l.onLoad = function(s) {
    if (s) {
variables_loaded = true;
        content.html = true;
        content.htmlText = this.minVar;
    }
}

og så tjekke det i din preloader:


if (downloaded == download && download>0 && variables_loaded) {


Jeg har ikke testet, men det virker i mit hovede :)

mvh mat
Avatar billede mmohr Nybegynder
15. januar 2004 - 10:59 #2
hay mat... det lyder rigtigt, men min preloader stopper til sidst uden at gå videre..
min flash ser ud som følgende.

preloaderen ligger i frame 1 i root og resten af flashen ligger i frame 2 (heri ligger selvfølgelig også text-feltet, men inde i et par movieclips!

tror du ikke det er noget med stien der er galt! eller hvad?
Avatar billede mat Nybegynder
15. januar 2004 - 12:41 #3
prøv at smide vildt omkring dig med traces, så vi kan se hvor langt vi kommer. (start med at smide en ind i din condition):

if (downloaded == download && download>0 && variables_loaded) {
trace("preloading done!");
clearInterval(intervalId);
        preloader._visible = 0;
        gotoAndStop(2);
    }
}

En ide ville osse være at holde øje med om "variables_loaded" overhovedet bliver opdaget af din funktion (selvom jeg nu mener at den burde)
Avatar billede mmohr Nybegynder
15. januar 2004 - 15:40 #4
loaderen kan ikke finde variables_loaded.. det virker i hvert fald som det er det der er problemet.. ¨det må være fordi flash playeren venter med at aktivere load variabel scriptet, til loaderen sender playeren videre til frame 2.. det gir også mening.. men hvordan kan man så gøre det?? kan jeg ikke bare smide load variabel scriptet ind i preloaderen! og så senere hente variablen, når den skal bruges?
Avatar billede mat Nybegynder
15. januar 2004 - 17:52 #5
Jo, jeg troede ovenstående lå sammen med preloaderen i frame 1, ellers er det jo klart at den ikke kan finde variablen :)

Du kan hente variablen senere i loadVars objektet med

l.minVar

mvh mat
Avatar billede mmohr Nybegynder
27. januar 2004 - 18:37 #6
hvordan?? actionscript er bare ikke min stærke side!
Avatar billede mat Nybegynder
28. januar 2004 - 08:32 #7
Ligger dit script til at loade variablerne i frame 1 sammen med preloaderen? I mit forslag skal det det.

Og det jeg så mener i 15/01-2004 17:52:43 er at når du senere vil proppe de loadede variabler ind i et tekstfelt skal du refere til LoadVars objektet som jo hedder "l".

l.minVar // i "l" er der en variabel, der hedder "minVar" - gi mig den :)

Håber det hjælper.

mvh mat
Avatar billede mmohr Nybegynder
28. januar 2004 - 23:31 #8
faktisk tror jeg alligevel at det er federe med hvis loaderen står for sig selv! så jeg har en lille loader ved hvert tekst felt.. jeg har lavet en lille cirkel animation til en sådan loader, men kan du hjælpe mig med scriptet.. det er ligsom før... jeg loader teksten med:

l = new LoadVars();
l.load("listnews.php");
l.onLoad = function(s) {
    if (s) {
variables_loaded = true;
        content.html = true;
        content.htmlText = this.minVar;
    }
}

hvordan gør jeg sådan at den viser et lille movieclip indtil teksten kommer??
Avatar billede mat Nybegynder
29. januar 2004 - 09:36 #9
l = new LoadVars();
l.load("listnews.php");
l.onLoad = function(s) {
    if (s) {
variables_loaded = true;
        content.html = true;
        content.htmlText = this.minVar;
    }
}

this.onEnterFrame = function() {
if (!variables_loaded) {
loading_image._visible = true; // viser et movieclip med navnet "loading_image"
}
else {
loading_image._visible = false; // gør det usynligt
delete this.onEnterFrame
}
}

..noget i den retning vil jeg skyde på - det er stadig ikke testet.

mvh mat
Avatar billede mmohr Nybegynder
29. januar 2004 - 20:35 #10
tusind tak!.. Jeg regner med at det er meningen at jeg skulle placere loade movieclip'et der hvor jeg vil ha det.. det virker i hvert fald fint. www.thepsykeproject.dk hvis du har lyst til at tjekke det! måske er din forbindelse for hurtig til at du kan se det!

svar, så får du pointne!
Avatar billede mat Nybegynder
29. januar 2004 - 20:39 #11
okidoki :)
Avatar billede mat Nybegynder
29. januar 2004 - 20:40 #12
..meget nice site iøvrigt :)
Avatar billede mmohr Nybegynder
29. januar 2004 - 21:09 #13
tak! :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester