2013-08-07 38 views
0

此處使用0超時,以便在模糊控件之前按鍵有時間結束。這是我實現這一目標的方法......刪除設置爲零的錯誤超時

$(document).keypress(function(e){ 
    if(e.keyCode === 13){ 
    setTimeout(function(){ 
     $('input').blur(); 
    }, 0); 
    } 
}); 

什麼是在按下回車鍵時模糊控制的更好方法?

回答

0

爲什麼不嘗試使用keyup事件,以便您在用戶釋放密鑰之前有少量時間。

$(document).keyup(function(e){ 
    if(e.keyCode === 13){ 
     $('input').blur(); 
    } 
}); 

Check Fiddle

1

你不需要setTimeout這裏:

$(document).keypress(function(e){ 
    if(e.keyCode === 13){ 
     $('input').blur(); 
    } 
}); 

The demo.

0

你可能會驚訝地得知,不是零的超時。 Chrome的最小超時值爲8ms,Firefox的最小值爲15ms。

+0

儘管罕見,但可能會出現一些確實存在0超時的情況:http://stackoverflow.com/a/7221609/665261 –