2014-01-13 3 views
0

이상한 문제는 여기에 있습니다. 왜 작동하지 않는지 알 수 없습니다. 그러나 기본적으로 경고는 버튼을 누르 자마자 불이 나고, 전혀 5 초 지연이 없습니다!JavaScript의 setTimeout이 작동하지 않습니다.

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

답변

7
function testing() { 
    var delay = 5000; 
    setTimeout(function(){alert("5 seconds later...");},delay); 
} 

하면 경보가 즉시 실행되지 않도록하는 기능에 포장해야합니다. 다음과의 setTimeout 기능 사용시 setTimeout

+1

아 감사 몰랐어 님의

변경을! –

4

사용하는 방법에 대한 자세한 내용

Check out the MDN reference :

setTimeout(<function>, <delay>); 

첫번째 파라미터 함수이다. 당신이하고있는 일은 그것에게 경고 (..)의 가치를 부여하는 것입니다;

setTimeout(function(){ alert("5 seconds later..."); }, delay); 
관련 문제