Avatar billede le_bon Nybegynder
10. marts 2008 - 15:52 Der er 9 kommentarer og
1 løsning

clearInterval problem

Hej,

Jeg kører følgende funktioner i første frame, men jeg vil gerne have at de stopper når man rammer en bestemt frame. Går ud fra, at det har noget med clearInteval at gøre? How to do?

var intervalId01:Number = setInterval(this, "sektael", 1250);
var sek:Number = 0;
function sektael() {
    sek++;

}


var intervalId02:Number = setInterval(this, "decitael", 125);
var deci:Number = 0;
function decitael() {
    deci++;
    if (deci == 10) {
        deci = 0;
    }
    renter.all = sek+","+deci+" %";

}
Avatar billede maqhem Nybegynder
10. marts 2008 - 16:16 #1
clearInterval(intervalId01);
Avatar billede le_bon Nybegynder
10. marts 2008 - 16:28 #2
you got it! :o)

Det var også det jeg sad og rodede med, men måtte gøre på følgende måde for at det virkede:

var intervalId01:Number = setInterval(this, "sektael", 1250);
var sek:Number = 0;
function sektael() {
    sek++;

}


var intervalId02:Number = setInterval(this, "decitael", 125);
var deci:Number = 0;
function decitael() {
    deci++;
    if (deci == 10) {
        deci = 0;
    }
    renter.all = sek+","+deci+" %";

    if (sek>5) {
        clearInterval(intervalId01);
        clearInterval(intervalId02);
    }

}


Smid et svar for du svarede jo egentlig korrekt! Takker.
Avatar billede maqhem Nybegynder
10. marts 2008 - 17:30 #3
Din kode ser lidt kodet ud. Hvad er det helt præcist, du prøver at gøre?
Avatar billede maqhem Nybegynder
10. marts 2008 - 17:31 #4
Flot... Det set kodet ud - det er jo indlysende. Jeg mente "rodet".
Avatar billede maqhem Nybegynder
10. marts 2008 - 17:31 #5
Jeg må til at genlæse mine indlæg tre gange med alle de stavefejl :)

Rettelse: "Det ser kodet ud"
Avatar billede le_bon Nybegynder
10. marts 2008 - 18:11 #6
Haha! Jeg er ganske talentløs når det kommer til kode, så hvis du syntes det ser kodet eller rodet ud, så er du nok ikke helt galt på den.

Det eneste der skal ske er, at et dynamisk tekstfelt skal tælle op fra 0,0 til 4,0 (inkl. decimaler). Hvis du har lyst til at stramme lidt op på min kode, er du meget velkommen. Det virker nogenlunde som det er nu.
Avatar billede maqhem Nybegynder
10. marts 2008 - 20:48 #7
Det er meget skidt at have to intervaller kørende samtidig på denne hér måde, fordi Flash nogen gange ikke er så god til flere intervaller på en gang, og da sek og deci er afhængige af hinanden, vil det jo også være skidt, hvis nu Flash kommer til at skifte sekundet lidt før decimalen (fra 1,9 til 2,9 til 2,0 versus fra 1,9 til 2,0). Så hér er en kode, der udelukkende sørger for dine decimaler - og så retter det hele tal sig efter dette:

var Itv:Number = setInterval(SetRent, 125);
var Renter:Number = 0;
var End:Number = 5;

SetRent();

function SetRent():Void {
    if(Renter == End * 10) {
        clearInterval(Itv);
    }
    Tekst.text = Math.floor(Renter / 10) + "," + (Renter++ % 10).toString() + " %";
}

Men jeg kan se, du havde en variabel, der hed "sek". Betyder det sekunder? For hvis det er meningen, din kode skal tælle fra nul til fem på fem sekunder, skal de 125 (Itv) rettes til 100.
Avatar billede le_bon Nybegynder
10. marts 2008 - 22:30 #8
Maghem, det er storartet! Tak for det, og tak for undervisningen. Kan godt se problemet med min kode. Jeg kigger på det i morgen!

c",)
Avatar billede maqhem Nybegynder
11. marts 2008 - 07:58 #9
Mit navn er med q og ikke g, men det er jo en detalje. Vær så god. Spørg endelig igen, hvis der bliver noget.
Avatar billede le_bon Nybegynder
11. marts 2008 - 09:56 #10
Sorry ;o)

Det kører nu! 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