const setAnimationFrameInterval = (cb, time) => {
let currentTime = 0
let lastTime = Date.now()
const timerId = {}
function animloop() {
//记录当前时间
currentTime = Date.now();
if (currentTime - lastTime > time) {
lastTime = currentTime
cb();
}
//timerid为数字
timerId.id = requestAnimationFrame(animloop);
}
animloop()
return timerId;
}
const clearAnimationFrame = (id) => {
cancelAnimationFrame(id)
}
let count = 0
let timer = setAnimationFrameInterval(() => {
console.log(111)
count++
if(count > 4) {
console.log(timer)
}
}, 1000)
setTimeout(() => {clearAnimationFrame(timer.id)}, 5000)
// 后台requestAni 不执行 配合setTimeout
console