2014-07-18 62 views
0

我有一個函數,我想在運行每個鍵盤上的X秒之後運行在鍵盤上。我無法弄清楚我做錯了什麼,所以任何建議都會有幫助,謝謝。延遲後運行鍵控功能

<input type="text" name="endLocation" id="endLocation" class="markerLoc" onkeyup="keyup()" /> 

var timer; 
function keyup(){ 
    clearTimeout(timer); 
    timer=setTimeout(CalculateRoutes(),4000); 
} 
+0

試'計時器= setTimeout的(函數(){CalculateRoutes();},4000);'' – RevanProdigalKnight

+2

CalculateRoutes()'立即運行的功能。失去括號。 – Carpetsmoker

回答

3

您正在調用CalculateRoutes,並將結果發送給setTimeout

var timer; 
function keyup(){ 
    clearTimeout(timer); 
    timer=setTimeout(CalculateRoutes,4000); 
            ^no parens 
} 
+0

啊,我沒有意識到括號中的函數會立即運行,謝謝! – Liam