This code will execute a function after the user has stopped typing for a time of 1000ms. Hence the function will not be called on each keyup event. Great!!!
jQuery(function() {
var delay = (function() {
var timer = 0;
return function(callback, ms) {
clearTimeout (timer);
timer = setTimeout(callback, ms); }
; }
)();
$('input').keyup(function() {
delay(function() {
alert('Time elapsed!'); }
, 1000 ); }
); }
);