我目前正在为我的网站开发一个实时搜索,我想用一些简单的 jQuery 来减少一些不必要的请求(当然我有一个后端泛洪控制)。我的搜索字段有一个 keydown-event-listener。如果 val().length
为 >= 3,此监听器当前仅会触发 PHP 搜索功能的 ajax 命令。
但现在我想要一个附加条件。因此,当长度 >= 3 时,如果用户正在执行另一个按键,我想等待大约 0.5 秒左右。如果他这样做,则不应调用该函数,我希望监听器再等待 0.5 秒,然后再次等待更多用户输入,依此类推。我如何实现这样的功能?
最佳答案
var timeout;
$('#yousearchbox').on('keyup',function(){
//if you already have a timout, clear it
if(timeout){ clearTimeout(timeout);}
//start new time, to perform ajax stuff in 500ms
timeout = setTimeout(function() {
//your ajax stuff
},500);
})
关于javascript - jQuery 按键事件等待 0.5 秒等待另一个用户按键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21781827/