E5.07.2unreachable footer under infinite scroll设计
页脚内容变得不可达
别名: 无限滚动挡住页脚 · footer never comes · 页脚不可达
概念解释
文档底部通常还放着版权、法律链接、语言切换、备用导航这些页脚内容。无限滚动下页脚不可达(unreachable footer under infinite scroll)指的是:列表永远在底部再长出一截,视口到达不了那条页脚,并不是用户找不到链接写在哪。位置感和终点可以靠别的刻度部分挽回;页脚是一个具体的、钉在文档末尾的目标,追加一旦不停,这个目标就没有到达事件。
机制
页脚的可达性依赖「文档有终点」:滚动条走到头,页脚进入视口。自动追加把「走到头」改写成「再去取一批」,滚动条的拇指会在每次加载后重新变短,用户以为还没到底——确实也没到底。页脚 DOM 即使在列表后面,也始终被尚未到来的下一批隔开。法律和技术要求放在页脚的入口(隐私、无障碍声明、退出登录的备用路径)于是从可达集合里消失,不是被藏进菜单,而是被无限的中间状态挡住。
部分实现会在加载间隙闪出页脚,下一批一到又把它顶走。这种闪现比完全没有更糟:用户看见了、伸手去点,目标已经移走。另一些实现把页脚做成悬浮条,那已经不是文档页脚,会和底栏、回到顶部抢位置。
边界
没有页脚的纯应用壳(系统级设置已提供法律入口)不受影响。把页脚内容复制到关于页、设置或注册流程里,滚动列表可以没有页脚——前提是复制后的入口真的可达,而不是只在「理论上存在」。聊天类底部是输入框不是页脚,这条机制不适用。若追加在明确耗尽后停止,页脚会在最后一次加载后出现,不可达只发生在「永远还有下一批」或「下一批很慢以至于人等不及」的时候。
怎么落地
- 法律、语言、备用账号入口不要只放在会被追加挡住的文档末尾;给它们一条不依赖滚到头的路径。
- 列表若必须无限追加,把页脚从列表文档流里拿出来,放到不会被下一批顶走的区域,或在追加停止时再插入。
- 禁止在两次加载之间把页脚闪进视口又立刻挤走。
- 验证:关掉快捷键和站点地图,只用滚动去点隐私政策、语言和页脚里的备用导航。点不到即失败。再在慢网下看页脚是否会闪现后消失——闪现也算不可达。