E5.06.3adjustable page size设计

每页数量应可调整

别名: 每页条数 · page size · 分页密度

概念解释

一页切多少条决定扫视密度、请求体积和总页数。可调每页数量(adjustable page size)让同一种分页在「少而清晰」和「多而总览」之间按任务切换。它不管页码怎么编号、也不管能不能跳到某一页,只管切块的粒度是否被锁死在一个对所有人都不合适的默认值上。

机制

默认条数是设计者对「一屏能扫完」的猜测。对照、勾选、阅读长文本的人需要较少行,以免滚动里丢失已选项;扫描目录、比对很多字段的人需要较多行,以免总页数膨胀成无法翻完的距离。粒度还跟网络和渲染绑定:条数加倍,单次请求和表格重排的成本加倍,但总往返次数下降。把粒度锁死,等于强迫所有任务、所有网速、所有窗口高度共用同一个切法。

改条数会重写坐标系:原来的「第 5 页」在新粒度下不再是同一批对象。若系统不说明、不把用户留在同一条记录附近,可调粒度会破坏本可由页码提供的回溯。所以可调不是一个孤立下拉框,它必须和「当前看到的是哪一段」一起重新锚定。

边界

公开分享的页地址若把条数写进 URL,收件人会看到不同密度,这可以是特性也可以是混乱——共享场景宜有一个稳定默认,把条数当作个人偏好存在本地。移动端一屏已接近默认条数时,再提供 100 条会变成超长页,失去分页的切块意义。无总数的流式接口无法按条数切出稳定页,调节会变成「每次多取一点」,那是另一类控件。无障碍用户可能依赖「每页较少以便朗读」,强制大页会超出工作记忆。

怎么落地

  • 提供少量档位(例如 10 / 20 / 50),不要用任意整数输入当主方式;改完后保持筛选,并把视口锚定在改之前正在看的那条或它的邻近。
  • 把所选档位记成该列表的个人偏好,不要每次回到默认;分享链接则明确是带条数还是只用默认。
  • 总条数很少时藏起这个控件;总条数巨大时避免「全部」档,以免一次渲染拖垮页面。
  • 验证:在第 n 页中部盯住一条记录,改大条数和改小条数各一次,该记录应仍在视口附近,且总页数随之变化。再换窗口高度和网速档,看默认档是否还扫得完、加载得完;任一失败就说明档位不是装饰。

延伸

  • 同组E5.06.1 分页提供位置感与可回溯性 · E5.06.2 页码跳转需支持直接输入
  • 相邻E5.07 无限滚动 · E4.03 表格
  • 站内检索page size · rows per page · pagination density

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E5.06.3