Infinite scroll 无限滚动

/IN-fin-it SKROHL/ · noun · 导航类模式 · #101

列表或信息流在你快滚到底时自动加载下一批内容,页面看起来永远没有尽头。信息流很适合它;但需要查找、比较内容或者要用到页脚的页面,往往不适合。

Infinite scroll(无限滚动) UI 模式示例:CatchUI 图鉴标本

别名:无限滚动、无限加载、滚动加载、上拉加载更多。

你可能会这样叫它

  • “越往下滑内容越多”
  • “刷不到底的信息流”
  • “滑到底自动加载更多”
  • “没有页码一直往下翻”

……它的名字是 无限滚动(Infinite scroll)。

常见问题

无限滚动和分页怎么选?

无限滚动适合用户没有明确目标、随便刷的信息流,比如社交动态、图片流;分页适合需要搜索、比较或回头再找的结果,因为每一页固定、可以分享链接,用户也能到达页脚。拿不准时,用「加载更多」按钮是折中方案。

代码里叫什么

Web (JS)IntersectionObserver 观察列表末尾的一个哨兵元素
SwiftUIList .onAppear 最后几行出现时加载下一页
UIKitUICollectionViewDataSourcePrefetching
Jetpack ComposeLazyColumn collectAsLazyPagingItems()
Android (Views)PagingDataAdapter
FlutterListView.builder ScrollController

复制给 AI 编程工具

把这个列表改成无限滚动:访客快到底部时,用 IntersectionObserver 观察最后一项后面的哨兵元素,加载下一页并追加到列表,加载期间显示骨架屏占位行。全部加载完后显示「已经到底了」;请求失败时显示重试按钮;保留 URL 或滚动位置,让返回键回到原来的位置;页脚仍然能够到达。用礼貌的方式向读屏用户播报新增内容。

用 AI 写界面时该怎么说:UI 用词指南(英文)→

相关模式

网站各部分叫什么(英文)→

传一张截图,抓住这个模式 →

学会从视觉线索认出 UI 模式(英文)