Window setTimeout() metoden

Definition och användning

setTimeout() Metoden anropar funktionen efter ett antal millisekunder.

Kommentar:1 sekund = 1000 millisekunder.

Tips

setTimeout() Kör endast en gång.

Om du behöver upprepa exekveringen, använd setInterval().

Använd clearTimeout() metoden För att förhindra att funktionen startas.

För att radera timeout, använd från setTimeout() Återkommande id:

myTimeout = setTimeout(function, milliseconds);

Därefter kan du genom att anropa clearTimeout() metoden För att stoppa exekveringen:

clearTimeout(myTimeout);

Se också:

clearTimeout() metoden

setInterval() metoden

clearInterval() metoden

Exempel

Exempel 1

En hälsning som väntar i 5 sekunder:

const myTimeout = setTimeout(myGreeting, 5000);

Prova själv

Exempel 2

Använd clearTimeout(myTimeout) för att förhindra att myGreeting körs:

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

Prova själv

Mer exempel på nedan på sidan.

Syntax

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

Parametrar

Parametrar Beskrivning
function Obligatoriskt. Funktionen att utföra.
milliseconds

Valfritt. Antal millisekunder att vänta innan exekvering.

Standardvärdet är 0.

param1, param2,...

Valfritt. Parametrar som skickas till funktionen.

IE9 och tidigare versioner stöder inte.

Returvärde

Typ Beskrivning
Nummer.

timers ID.

Vänligen ange detta id med clearTimeout(idmetoden Använd tillsammans för att avbryta timer.

Webbläsarstöd

Stöds av alla webbläsare setTimeout():

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Stödjer Stödjer Stödjer Stödjer Stödjer Stödjer

Mer exempel

Exempel 3

Visa en varningsruta efter 3 sekunder (3000 millisekunder):

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

Prova själv

Exempel 4

Visa tidsbestämd text:

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);

Prova själv

Exempel 5

Öppna ett nytt fönster och stäng det efter tre sekunder (3000 millisekunder):

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

Prova själv

Exempel 6

Fortsätt att räkna - men kan stoppa räkningen:

function startCount()
function stopCount()

Prova själv

Exempel 7

Skapa en klocka med hjälp av ett tidsförloppsevent:

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

Prova själv

Exempel 8

Överför parametrar till funktionen (fungerar inte i IE9 och tidigare versioner):

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

Prova själv

Exempel 9

Men, om du använder en anonym funktion, fungerar det för alla webbläsare:

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

Prova själv