Window setTimeout() metoden

Definition og brug

setTimeout() Metoden kaller funktionen efter et antal millisekunder.

Kommentar:1 sekund = 1000 millisekunder.

Advarsel

setTimeout() kør kun én gang.

Hvis du har brug for at gentage, skal du bruge setInterval().

Brug clearTimeout() metoden for at forhindre, at funktionen starter.

For at fjerne timeout, brug setTimeout() Tilbageværdens id:

myTimeout = setTimeout(function, milliseconds);

Dernæst kan du stoppe funktionen ved at kalde clearTimeout() metoden for at stoppe udførslen:

clearTimeout(myTimeout);

Se også:

clearTimeout() metoden

setInterval() metoden

clearInterval() metoden

Eksempel

Eksempel 1

En hilsen, der venter 5 sekunder:

const myTimeout = setTimeout(myGreeting, 5000);

Prøv det selv

Eksempel 2

Brug clearTimeout(myTimeout) til at stoppe kørsel af myGreeting:

const myTimeout = setTimeout(myGreeting, 5000);
function myStopFunction() {
  clearTimeout(myTimeout);
}

Prøv det selv

Flere eksempler findes nedenfor på siden.

Syntaks

setTimeout(function, milliseconds, param1, param2, ...)

parametre

parametre beskrivelse
function Obligatorisk. Funktionen, der skal udføres.
milliseconds

Valgfri. Antal millisekunder at vente, før udførsel.

Standardværdi er 0.

param1, param2,...

Valgfri. Parameter, der overføres til funktionen.

IE9 og tidligere versioner understøtter ikke.

tilbageværdi

type beskrivelse
nummer.

timer-ID.

venligst gem dette id med clearTimeout(idmetode Brug sammen for at annullere tidsmåleren.

Browserunderstøttelse

Browsere understøtter alle setTimeout():

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Understøtter Understøtter Understøtter Understøtter Understøtter Understøtter

Flere eksempler

Eksempel 3

Vis advarselvindue efter 3 sekunder (3000 millisekunder):

let timeout;
function myFunction() {
  timeout = setTimeout(alertFunc, 3000);
}
function alertFunc() {
  alert("Hello!");
}

Prøv det selv

Eksempel 4

Vis tidsberegningstekst:

let x = document.getElementById("txt");
setTimeout(function(){ x.value = "2 seconds" }, 2000);
setTimeout(function(){ x.value = "4 seconds" }, 4000);
setTimeout(function(){ x.value = "6 seconds" }, 6000);

Prøv det selv

Eksempel 5

Åbn et nyt vindue og luk det efter tre sekunder (3000 millisekunder):

const myWindow = window.open("", "", "width=200, height=100");
setTimeout(function() {myWindow.close()}, 3000);

Prøv det selv

Eksempel 6

Løbende tælling - men kan stoppe tælling:

function startCount()
function stopCount()

Prøv det selv

Eksempel 7

Opret en ur med tidsberegningseventer:

function startTime() {
  const date = new Date();
  document.getElementById("txt").innerHTML = date.toLocaleTimeString();
  setTimeout(function() {startTime()}, 1000);
}

Prøv det selv

Eksempel 8

Overfør parametre til funktionen (virker ikke i IE9 og tidligere versioner):

setTimeout(myFunc, 2000, "param1", "param2");

Prøv det selv

Eksempel 9

Men, hvis du bruger en anonym funktion, gælder det for alle browsere:

setTimeout(function() {myFunc("param1", "param2")}, 2000);

Prøv det selv