我看了一下资料,觉得防抖比较适合我的需求,但尝试了一下,不知道我的代码怎么结合防抖函数使用,麻烦大哥指导一下,感谢。
白菜一枚,自学自完,请各位指教,谢谢。
我的代码:
[JavaScript] 纯文本查看 复制代码 <script>
var input = $('.autosearch2');
var autosearch = new AutoSearch();
autosearch.init({input:input ,autoShow:false,data:function(callback){
$.get('/php/huodeziduanPost.php',{vBiao:"dizhi",vZiDuan:"DiZhiQuanCheng",vDISTINCT:"DISTINCT",key:input.val()},function(result){
callback(result);
},'json');
}
});
</script>
函数防抖:
[Asm] 纯文本查看 复制代码 /**
* @desc 函数防抖
* [url=home.php?mod=space&uid=952169]@Param[/url] func 函数
* @param wait 延迟执行毫秒数
* @param immediate true 表立即执行,false 表非立即执行
*/
function debounce(func,wait,immediate) {
let timeout;
return function () {
let context = this;
let args = arguments;
if (timeout) clearTimeout(timeout);
if (immediate) {
var callNow = !timeout;
timeout = setTimeout(() => {
timeout = null;
}, wait)
if (callNow) func.apply(context, args)
}
else {
timeout = setTimeout(function(){
func.apply(context, args)
}, wait);
}
}
} |