函數(shù)節(jié)流的定義: 規(guī)定的單位時(shí)間內(nèi)只執(zhí)行一次,如果在單位時(shí)間內(nèi)執(zhí)行了多次,那么最后也只會(huì)執(zhí)行一次。
<div id="div1" draggable="true" >節(jié)流函數(shù)</div>
// 節(jié)流函數(shù)
function throttle(fn, dealy = 100) {
let timer = null;
return function() {
if (timer) {
return; /// 如果在單位時(shí)間內(nèi)執(zhí)行了多次,那么最后都會(huì)return出去也只會(huì)執(zhí)行一次。
}
timer = setTimeout(() => {
fn.apply(this, arguments);
timer = null;
}, dealy);
};
}
let div1 = document.getElementById("div1");
div1.addEventListener(
"drag",
throttle(function(e) {
console.log(e.offsetX);
}, 2000)
);