簡體   English   中英

JavaScript中的setTimeout不起作用

[英]setTimeout in JavaScript doesn't work

這里出現奇怪的問題,我不明白為什么它不起作用。 但是基本上,只要我按一下按鈕,警報就會觸發,根本沒有5秒的延遲!

<html>
<head>
    <title>Testing Page</title>
</head>
<script type="text/javascript">
function testing() {
    var delay = 5000;
    setTimeout(alert("5 seconds later..."),delay);  
}
</script>
<body>
<input type="button" value="Run Function" onClick="testing()">
</body>
</html>
function testing() {
    var delay = 5000;
    setTimeout(function(){alert("5 seconds later...");},delay);  
}

需要將其包裝在一個函數中,以便不會立即執行警報。

查看MDN參考以獲取有關如何使用setTimeout更多信息。

setTimeout函數的用法如下:

setTimeout(<function>, <delay>);

第一個參數是一個函數。 您正在做的就是為其賦予alert(..)的值;

更改為:

setTimeout(function(){ alert("5 seconds later..."); }, delay);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM