Window setTimeout() 方法
- 上一頁 setInterval()
- 下一頁 status
- 返回上一層 Window 對象
定義和用法
setTimeout()
方法在若干毫秒后調用函數。
注釋:1 秒 = 1000 毫秒。
提示
setTimeout()
只執行一次。
如果您需要重復執行,請改用 setInterval()
。
請使用 clearTimeout() 方法 來阻止函數啟動。
如需清除超時,請使用從 setTimeout()
返回的 id:
myTimeout = setTimeout(function, milliseconds);
然后你可以通過調用 clearTimeout() 方法 來停止執行:
clearTimeout(myTimeout);
另請參閱:
實例
例子 1
等待 5 秒鐘的問候語:
const myTimeout = setTimeout(myGreeting, 5000);
例子 2
使用 clearTimeout(myTimeout) 阻止 myGreeting 運行:
const myTimeout = setTimeout(myGreeting, 5000); function myStopFunction() { clearTimeout(myTimeout); }
頁面下方提供更多實例。
語法
setTimeout(function, milliseconds, param1, param2, ...)
參數
參數 | 描述 |
---|---|
function | 必需。要執行的函數。 |
milliseconds |
可選。執行前等待的毫秒數。 默認值為 0。 |
param1, param2,... |
可選。傳遞給函數的參數。 IE9 及更早版本不支持。 |
返回值
類型 | 描述 |
---|---|
數字。 |
計時器的 ID。 請將此 id 與 clearTimeout(id) 方法 一起使用以取消計時器。 |
瀏覽器支持
所有瀏覽器都支持 setTimeout()
:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
更多實例
例子 3
3 秒(3000 毫秒)后顯示警告框:
let timeout; function myFunction() { timeout = setTimeout(alertFunc, 3000); } function alertFunc() { alert("Hello!"); }
例子 4
顯示定時文本:
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);
例子 5
打開新窗口并在三秒(3000 毫秒)后關閉該窗口:
const myWindow = window.open("", "", "width=200, height=100"); setTimeout(function() {myWindow.close()}, 3000);
例子 6
持續計數 - 但可以停止計數:
function startCount() function stopCount()
例子 7
使用計時事件創建的時鐘:
function startTime() { const date = new Date(); document.getElementById("txt").innerHTML = date.toLocaleTimeString(); setTimeout(function() {startTime()}, 1000); }
例子 8
將參數傳遞給函數(在 IE9 及更早版本中不起作用):
setTimeout(myFunc, 2000, "param1", "param2");
例子 9
但是,如果您使用匿名函數,將適用于所有瀏覽器:
setTimeout(function() {myFunc("param1", "param2")}, 2000);
- 上一頁 setInterval()
- 下一頁 status
- 返回上一層 Window 對象