javascript 去抖
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 去抖相关的知识,希望对你有一定的参考价值。
{
let box = document.querySelector("body");
box.style.height = "1000px";
function handle(e)
{
console.log("e",e.x,e.y);
box.innerHTML = `${e.x},${e.y}`;
}
box.addEventListener('mousemove',debounce(handle,1000));
function debounce(fn,wait)
{
let timeId = null;
return function()
{
if(timeId!=null)
clearTimeout(timeId);
let args = arguments;
console.log(args);
//或者写成箭头函数,但注意箭头函数的arguments指向的是外层函数的arguments,这时候就不用赋值args了。
timeId = setTimeout(()=>{fn.apply(this,arguments)},wait);
//timeId = setTimeout(function(){fn.apply(this,args);},wait)
//立即执行
//timeId = setTimeout(fn.apply(this,arguments),wait);
}
}
}
以上是关于javascript 去抖的主要内容,如果未能解决你的问题,请参考以下文章
javascript 去抖功能
javascript 去抖功能
javascript 功能去抖
javascript 去抖
javascript 去抖函数
javascript 去抖