あなたが参照している方法は「デバウンス」と呼ばれます
通常、すべてのスクリプトの最後に「デバウンス」機能があります
var debounce=function(func, threshold, execAsap) {
var timeout;
return function debounced () {
var obj = this, args = arguments;
function delayed () {
if (!execAsap)
func.apply(obj, args);
timeout = null;
};
if (timeout)
clearTimeout(timeout);
else if (execAsap)
func.apply(obj, args);
timeout = setTimeout(delayed, threshold || 100);
};
};
そして、デバウンスの恩恵を受ける何かをするときはいつでも、それを一般的に使用できます
したがって、コードは次のように記述されます
$("#search_box").keyup(debounce(function() {
//do stuff in this function
}
,350 /*determines the delay in ms*/
,false /*should it execute on first keyup event,
or delay the first event until
the value in ms specified above*/
));
同様のユースケースについては、 Facebook Style AJAX Searchを参照してください...