1. Don't Fuck with Scroll (dontfuckwithscroll.com)
网页滚动劫持:破坏用户体验的十大原因
核心概念
滚动劫持(Scrolljacking)是指覆盖浏览器原生滚动行为,改变网页滚动速度、方向或效果的做法。常见的表现形式是动量滚动(平滑/惯性滚动)插件,它们虽被宣传为增强体验的功能,实则对互联网造成严重负面影响,破坏了自然、高效且可预测的浏览体验,通常会降低可用性、可访问性和性能。
权威研究支持
尼尔森·诺曼集团的一项可用性研究证实,大多数参与者因滚动劫持体验到至少轻度方向感错乱,部分用户将改变后的滚动行为误认为程序错误。任务导向型用户对此的容忍度显著低于探索型用户。研究还指出,由于滚动持续时间更长且屏幕更小,滚动劫持在移动设备上的问题更为严重。
十大负面影响
违反用户预期
用户熟悉从网页诞生以来的滚动模式。动量滚动插件用类似“糟糕电子游戏”的动画效果取代即时、可预测的移动,破坏肌肉记忆,让用户感觉在与页面“对抗”,而非自然互动。引发晕动症
浮动、眩晕的动画效果可能使易感用户(数量远比想象中多)感到恶心,类似观看摇晃镜头。许多网站甚至不提供关闭选项,强制用户忍受不适。降低残障用户可访问性
可访问性是一项基本权利。这些插件会干扰屏幕阅读器和键盘导航,为运动障碍或视觉受限用户引入时间延迟,可能导致网站无法使用,排斥了数百万用户。设备性能不一致
相关插件在低端或旧设备上可能导致延迟、卡顿甚至崩溃,使得网站无法在各种硬件上流畅运行,违背了“网络应为所有人服务”的原则。损害高级用户效率
追求效率和精度的高级用户(如快速浏览文档者)会被缓慢的动画拖慢工作流程,这相当于让赛车手以20英里/小时的速度行驶。增加页面加载时间
插件增加了臃肿的JavaScript库、依赖项和动画渲染的CPU周期,导致页面加载变慢,尤其在移动网络或连接较差的地区,损害性能以换取美观。破坏浏览器原生功能
现代浏览器已内置动量滚动设置。第三方插件可能覆盖或与这些原生功能冲突,导致自定义手势或系统级设置(如减少动态效果)失效。使滚动位置不清晰
动画在操作与结果之间引入延迟,让用户难以精确定位页面位置,尤其在长页面中容易迷失方向,将快速导航变成猜谜游戏。增加维护开销
插件需要定期更新以保持兼容性,且每次更新都可能引入新错误,为开发团队创造额外工作,消耗本可用于提升网站速度、安全性或优化的时间和资源。不尊重用户控制权
覆盖默认滚动行为意味着开发者认为自己的设计优于用户偏好或需求,这种“我们比你更懂”的傲慢态度会损害用户体验,侵犯用户的自主权。
结论
滚动劫持和动量滚动插件如同“为了‘看起来酷’而把功能自行车改成独轮车”,它们增加不必要的复杂性,降低可用性并激怒用户。正如尼尔森·诺曼集团所言:“可用性是愉悦的基础。” 应放弃对滚动行为的改造,坚守原生、可预测、快速的滚动行为。核心建议是:别把滚动本身变成一个“问题”——就让人们正常地滚动。