2011-09-07 37 views
0

我想減少的情況下,執行時間 的數字,所以我寫了這樣的事情:有人可以幫我解決一個小的JavaScript setTimeout問題嗎?

var slow=function(method,context){ 
    method.id&&clearTimeout(method.id) 
    method.id = setTimeout(function(){ 
     method.apply(context,arguments) 
    }, 500) 
} 

window.onload=function(){ 
    function print(){ console.log("thanks a lot") } 
    document.body.addEventListener("mousemove",function(){ 
     slow(print) 
    }, false) 
} 

如果我操之過急在身上,和打印功能將不會被執行立即,但它似乎並沒有工作 有人可以幫忙嗎?非常感謝!

+1

打印功能是做什麼的? JavaScript是單線程的 - 如果打印需要一段時間,在下一個之前(對於隨後的鼠標移動)會觸發 – Matt

回答

0

第一眼看上去,你have'nt提供的上下文參數調用慢

+0

參數在JavaScript中是可選的。如果沒有指定它,它只是'未定義',並且使用上下文爲未定義的method.apply(context,arguments)意味着上下文將是'window'對象。 – Matt

相關問題