当用户滚动到特定区域时,我正在尝试执行特定任务。
我遇到的问题是,当用户以正常速度滚动时,我可以捕获当前的scrollTop位置,并触发所需的功能。
但是,如果用户滚动得更快,则当滚动速度减慢回到正常速度时,似乎只会捕获scrollTop - 这意味着用户可以完全滚动到我想要触发该功能的区域。
我需要某种方式在每个滚动速度下使用每个scrollTop位置进行更新。
我只是在使用:
$('body').scroll(function(e)
{
intScrollPoint = $(body).scrollTop();
});
有什么想法吗?
答案 0 :(得分:0)
节流可以解决您的问题,
window.addEventListener('scroll', throttle(callback, 1));
function throttle(fn, wait) {
var time = Date.now();
return function() {
if ((time + wait - Date.now()) < 0) {
fn();
time = Date.now();
}
}
}
function callback() {
// do something,
}
有关详细信息,请查看此link