我有这个jQuery代码,用于查询keyup事件上的API(通过keyterms.php).它按原样工作,但我想弄清楚如何实现一个"暂停",这样它只会在最后一个键盘之后的一定时间(比如2秒)之后进行查询.任何帮助都感激不尽.谢谢!
$(document).ready(function() { $('#loading').hide(); $('#q').keyup(function(){ $('#loading').show(); $.post("keyterms.php", { q: $('#q').val() }, function(response){ $('#qResult').fadeOut(); setTimeout("finishAjax('qResult', '"+escape(response)+"')", 400); }); return false; }); });
Andreas Grec.. 13
您可以使用StackOverflow用于其用户页面的jQuery插件; 它被称为TypeWatch
它可以像这样应用:
在这种情况下,finished
是一个回调函数(一个引用),当输入的时间量(在这种情况下,500ms)从最后一个keyUp事件传递时将被调用.
以下是对所需参数的简短描述(它实际上需要一个参数,一个对象,并且它的属性用作输入参数):
突出显示:美学,确定文本框获得焦点时是否应突出显示文本.默认为true
wait:插件认为键入完成之前等待的毫秒数.默认750.
captureLength:允许事件触发前所需的最少字符数.默认2.
callback:用户"完成"键入后回调函数.默认无效
有关此插件的现场演示,请查看用户页面
您可以使用StackOverflow用于其用户页面的jQuery插件; 它被称为TypeWatch
它可以像这样应用:
在这种情况下,finished
是一个回调函数(一个引用),当输入的时间量(在这种情况下,500ms)从最后一个keyUp事件传递时将被调用.
以下是对所需参数的简短描述(它实际上需要一个参数,一个对象,并且它的属性用作输入参数):
突出显示:美学,确定文本框获得焦点时是否应突出显示文本.默认为true
wait:插件认为键入完成之前等待的毫秒数.默认750.
captureLength:允许事件触发前所需的最少字符数.默认2.
callback:用户"完成"键入后回调函数.默认无效
有关此插件的现场演示,请查看用户页面