js节流小案例
let flag = true;
function throttled(fn, delay){
if(!flag){
return false
}
flag = false
setTimeout(function(){
fn()
flag = true
},delay)
}
/* 正常思路版
function throttled(fn, delay) {
let lastTime = null;
return function (...args) {
let now = Date.now();
if (lastTime === null || now - lastTime > delay) {
lastTime = now;
return fn.apply(this, args);
}
};
} */
function showTop(){
let scrollTop = document.body.scrollTop || document.documentElement.scrollTop
console.log(scrollTop);
}
document.addEventListener('scroll',function(){
throttled(showTop, 10000)
})