
分页不可替代的地方
分页最大的价值是给用户一个明确的位置感。你现在在第几页、后面还有多少,心里有数。想回头找刚才看过的那条,点回上一页就行。无限滚动做不到这一点,滚过的内容找不回来。
分享和引用也依赖分页。第 3 页有个链接想发给别人,复制地址就能到;无限滚动下,滚到第 200 条时地址栏还是同一个,没法定位。
对内容型站点,分页还有个隐形好处:它天然限制了单页的渲染量。一页二十条,服务端压力可控;无限滚动要不停加载,用户滚得越久请求越多,对服务器的持续压力更大。
无限滚动适合什么
信息流、图片瀑布流、短视频列表,这些场景用户的目标是持续浏览,不关心自己在第几条。这类内容用无限滚动最自然,手指一划就有新的,符合直觉。
判断标准是用户有没有明确的终点。逛图、刷内容,没有终点;查资料、找具体条目,有终点。有终点的场景用分页,没终点的用滚动。
还有一个前提:内容质量要稳定。无限滚动的前提是每一条都值得看,如果后面越刷越水,用户会有被骗的感觉,而且很难退回去。
混合方案怎么落地
最常见也最稳的做法是首屏加载一批,滚到底部时出现一个加载更多按钮,点了才继续。这样既有滚动的流畅,又保留了用户的控制权和位置感。
另一种是滚动加载加上回到顶部按钮,同时记录滚动位置。用户刷新或者返回时能回到原处,体验会好很多。
如果必须做传统分页,可以把每页条数调大一些,二十到五十条之间。条数太少翻页频繁,用户烦;太多单页渲染慢,首屏卡。
导航站这种列表型站点,我的建议是分页为主,分类页可以分页,首页推荐区可以滚动加载。两种模式按区块分配,别全站一刀切。
对 SEO 的影响
无限滚动对搜索引擎不友好,这是老问题。爬虫不会模拟滚动,后面加载的内容它抓不到。虽然有各种方案,但本质上是绕路。
分页结构对爬虫最友好,每页一个独立地址,能被完整抓取和索引。如果做无限滚动,至少要在页面里给出完整的分页链接作为兜底,让爬虫能顺着走。
还有一条:分页地址别用参数生成一堆重复内容。同一列表的不同排序、不同筛选如果都能被索引,会稀释权重,也容易被判重复。给规范地址加规范标签,让搜索引擎知道哪个是主版本。
我见过的失败案例
整站改成无限滚动,结果老用户找不到昨天看过的文章。因为滚过去就没了,只能重新翻。这种改动上线后用户投诉最多的就是找不回内容。
分页做成需要点击加载更多,但按钮藏在页面最底部,用户以为已经到底了,实际还有内容。这是设计问题,不是技术问题。
每页只给五条,翻页按钮做得特别小,手机上根本点不准。这类细节看着小,实际会直接拉低浏览深度。
最后一条经验:改动列表交互前先看数据。用户平均翻到第几页、在页面上停留多久,这些数字会告诉你到底该用哪种方式,别凭感觉改。
性能上的实际差别
分页是离散请求,用户翻到第几页才请求第几页,服务端压力可预测。无限滚动是连续请求,用户一直滚就一直请求,长时间停留在页面上的用户会产生几十次请求,对数据库和接口的压力是持续性的。
分页更容易做缓存。每一页的地址是固定的,可以整页缓存,命中后几乎零成本。无限滚动的请求带偏移量,缓存命中率低,几乎每次都要查库。
对带宽也有差别。分页一次加载一页的数据量,用户不翻页就不再消耗;无限滚动为了流畅,常常预加载后面几屏,实际下载了用户没看的内容。
移动端和桌面端的差别
手机上滚动是最自然的手势,分页按钮反而不好点。所以移动端更适合滚动加载,但要配合回到顶部的快捷入口,否则用户滚了两百条想回去只能一直往上划。
桌面端用户更习惯翻页,鼠标点页码比滚轮滚很久效率高。同一个站点,两端可以给不同策略,不用强求一致。
还有一个现实问题:手机上长时间滚动容易误触。滚到一半手指碰到广告或者卡片,跳转出去,回来又得从头滚。这种体验问题是无限滚动在移动端的固有缺陷,设计时要考虑怎么缓解。
用数据来决定
看浏览深度。平均翻到第几页、第几条,这个数字决定了无限滚动有没有意义。如果用户平均只看前五条,做成无限滚动纯属浪费,分页反而更清晰。
看回访行为。回访用户想找之前看过的内容,分页的位置感对他们更重要。回访占比高的站,优先考虑可定位的结构。
看转化路径。如果用户在列表里要找特定目标,分页加筛选才是正解;如果只是随便逛,滚动加载更顺。别把一个用于探索的界面做成需要精确定位的工具。
改完要观察一段时间。列表交互改动对浏览深度和停留时间的影响,上线一周就能看出来,不要改完就放着不管。
