找一个可以监测页面滚动结果的 js 插件,,,???

2018 年 3 月 7 日
 rateltalk

比如页面向上滚动,,向下滚动,,滚动到顶部,滚动到底部,,这样子的监测 js 插件,,求推荐,。

1583 次点击
所在节点    问与答
7 条回复
naver1
2018 年 3 月 7 日
hanzichi
2018 年 3 月 7 日
自己写个呗,就几行代码
rateltalk
2018 年 3 月 7 日
@hanzichi
// 页面滚动监测
var bodyScrollTop = 0,
bodyScrollBefore = 0;
$(window).scroll(function () {
bodyScrollTop = $(this).scrollTop();

// 滚动时给 header 加标识
$('.header').addClass('is-scrolled');

if (bodyScrollTop >= bodyScrollBefore) { // 向下滚动
console.log('向下滚动');
$('.header').removeClass('is-retracted');
} else { // 向上滚动
console.log('向上滚动');
$('.header').addClass('is-retracted');
}

setTimeout(function () {
bodyScrollBefore = bodyScrollTop;
}, 50);
});

这是我写的,,但是不能很好的监测,,总是会有延迟。或者判断不准确。
hanzichi
2018 年 3 月 7 日
@s609926202

setTimeout(function () {
bodyScrollBefore = bodyScrollTop;
}, 50);
});

这干嘛。。
luoway
2018 年 3 月 7 日
楼主需要的是解决性能问题了,查下函数节流、去抖
rateltalk
2018 年 3 月 7 日
@hanzichi 这个是记录滚动前一时间点距离顶部的距离
hanzichi
2018 年 3 月 7 日
@s609926202 及时记录啊,你这延迟 50ms 记录,当然感觉有延迟了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/435656

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX