Avatar billede carlo1 Nybegynder
13. juli 2003 - 15:03 Der er 4 kommentarer og
1 løsning

TimeOut funktion?

Er der en slags timeout funktion i Flash eller er der en der har et forslag til et script? Jeg skal køre en animation, hvorefter den skal vente i f.eks. 20 sek. og så køre forfra igen.
Avatar billede kanding Nybegynder
13. juli 2003 - 16:35 #1
prøv at kigge på setInterval funktionen
Avatar billede t-hviid Nybegynder
13. juli 2003 - 16:51 #2
lav et tomt movieclip med følgende script på:

onClipEvent(load) {
starttime = getTimer()
pause = 4000
stop()
}
onClipEvent(enterFrame) {
  if(getTimer() >= starttime + pause) {
play()
  }
}


tiden er i milisekunder så den skal sættes til 20000.

/Tommas
Avatar billede baitianlong Nybegynder
14. juli 2003 - 02:55 #3
der skal så lige tilføjes:

_root.stop();

_root.play();

ellers beder du bare movieclippet om at starte/stoppe ;)
Avatar billede baitianlong Nybegynder
14. juli 2003 - 03:17 #4
Jeg vil i øvrigt ændre lidt på scriptet, da den ovenstående (selv med ændringen) kun virker een gang m.v.

skriv dette i frame 1:

createEmptyMovieClip("pause", 0);
pause.onEnterFrame = function() {
  if(_root._currentFrame == _root._totalFrames && !nr2) {
      _root.stop();
      startTid = getTimer();
      nr2 = true;
  }
  if(getTimer() > startTid + 20000) {
      _root.play();
      nr2 = false;
  }
}

så venter den i sidste frame i 20 sekunder og kører derefter forfra.. Du kan så evt. indsætte en tom frame til sidst, som "venteFrame" (o;
Avatar billede jakwag Nybegynder
14. juli 2003 - 15:39 #5
Hej

Jeg lavede denne her på et tidspunkt, fordi jeg havde en lang animation hvor jeg forskellige steder ønskede at den stoppede i et sekund.

I første frame i animationen skrev jeg:

this.wait = function(sek) {
    this.stop();
    var startTime = getTimer()/1000;
    this.onEnterFrame = function() {
        var time = getTimer()/1000;
        if (time>startTime+sek) {
            this.play();
            delete this.onEnterFrame;
        }
    };
};

Og så kan man bare skrive:

this.wait(1);

I de frames hvor det skal stå. (1-tallet står selvfølig for 1 sekund).

: ) Jakob
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