一个顶级社交产品请一个产品经理的年薪至少 50 万,请一个交互设计师至少 30 万,他们花费数月时间精心设计的'无限滚动'机制,却被我一个下午写的 100 多行代码完全瓦解...
以下是浏览器插件(下载解压-开发者模式安装即可): 项目地址
简单总结社交产品"无限滚动"设计背后的核心商业逻辑:
// 其实只需要这么简单,就能打破这个精心设计的套路 if (scrollY >= limit) { stop(); // 给用户一个明确的终点 notify(); // 提醒用户该休息了 }
这不是技术的胜利,而是清醒的胜利。
产品团队投入:
我的方案:
// 一次开发,多平台覆盖 "matches": [ "*://*.facebook.com/*", "*://*.twitter.com/*", "*://*.weibo.com/*", "*://*.zhihu.com/*", "*://*.xiaohongshu.com/*", "*://*.bilibili.com/*" // ... 更多主流平台 ]
也许我就像堂吉诃德一样可笑 用简陋的代码对抗精密的商业设计。但正如堂吉诃德教会我们的:疯狂和理想主义,有时候比精明更有力量。
这不是一场胜利,而是一次浪漫的抗争。
![]() | 1 BadReese 348 天前 ![]() “也许我就像堂吉诃德一样可笑” - 堂吉诃德听了都要做噩梦 |
2 yaytohkay 348 天前 写 README 是个好习惯 |
3 stardustedstand OP @BadReese 哈哈,claude ai 写的,我只是提供个思路。 |
4 stardustedstand OP @yaytohkay v2exer 们要开始上班摸鱼了,来不及写了。赶紧给大伙提供点消遣。 |
5 heyjim75111 348 天前 我只要一个动作就可以干掉,按下电源键 |
6 stardustedstand OP @heyjim75111 可以的,核爆按钮。 |
![]() | 7 magicZ 348 天前 感动了,op 是个有趣的人 |
8 liuchao719 348 天前 ![]() 抖音没有睡觉提醒吗?不是的,每晚我都能刷到好几次护眼计划 + 睡觉提醒。正如你叫不醒一个装睡的人,只要想刷我还是会继续刷下去。让我放弃继续刷下去的理由只有一个,算法推给我的内容都是那几类内容,看的都不想再看了,今天的抖音也就结束了。 |
9 stardustedstand OP @magicZ 多谢,v2exer 都挺有趣的,我只是其中普通的一员,还要多多学习才是。 |
![]() | 10 cander0815 348 天前 然而我每次都是一屏幕看完 就直接下拉刷新。不去看下面的 。分页不存在的 |
11 stardustedstand OP @liuchao719 官方的睡觉提醒和护眼计划应该没有打断无限刷新流。所以大部分人才会继续下去。 |
12 FireKey 348 天前 提醒没用,要强制执行才有效果 |
![]() | 13 InDom 348 天前 感谢楼主分享,感谢 ChatGPT , 现在可以通过油猴脚本加载了。 https://gist.github.com/imdong/334dba764152c82b4bc62ece9db33eaf https://greasyfork.org/zh-CN/scripts/514953-scroll-limiter |
14 stardustedstand OP @cander0815 那是移动端 app 的吧,pc 端大部分没有这种机制。这又要涉及另外一个问题了,是否在设计思想上,PC 是无导航的自行车,手机是自动驾驶的汽车。或者说 PC 是塞尔达荒野之息,手机是自动寻路的页游。 |
15 stardustedstand OP @InDom 油猴也可以的 |
![]() | 16 liu731 PRO 有种上学时洗澡水卡余额不足的感觉~ |
17 stardustedstand OP @FireKey 已经强制执行了,滑到 limitY 坐标会禁止再向下滑动。 |
18 stardustedstand OP @liu731 洗热水澡多爽啊,现代社会唯一能脱离信息流的温室。余额拉满就是。社交媒体就不一样了,对大部分人来讲,是深不见底的泥潭。 |
![]() | 19 Tamamopoi 348 天前 星巴克蒸汽奶为什么 16 块,我看中杯原味得 22 了 |
20 stardustedstand nbsp; OP ![]() @Tamamopoi 使用淘宝大法,用资本主义击败资本主义。 |
![]() | 21 20015jjw 348 天前 via iPhone 蛮好 合理对抗 doom scrolling |
22 adgfr32 348 天前 我也写过一个类似的插件, 不过我是直接屏蔽. 检测页面发起的请求, 如果有 recommend, rcmd, flow 之类的直接 block. |
23 zgsi 348 天前 把百度加上,谢谢 |
24 stardustedstand OP @20015jjw 还有 rabbit hole 等等。。。 |
25 stardustedstand OP @z1829909 好思路 |
26 stardustedstand OP @zgsi |
![]() | 27 mcfog 348 天前 ![]() 笑死 苹果市值 250 亿,我用三秒抠鼻屎决定不买苹果产品,抵消了苹果的商业价值,成本是一团鼻屎 |
29 stardustedstand OP @mcfog 能供君一笑,也是这段代码和文章的造化了 |
30 stardustedstand OP @handsome50 那可能是内存泄露了 |
31 MarginK 348 天前 感觉什么都没说,limit 怎么取的呢? notify 就是提醒一下自己?感觉太简单了,标题党了感觉 |
33 stardustedstand OP @MarginK 代码里面有的,默认取 8000px 的限制,超过了就禁止滑动了 ,另外用户可以自定义 limit ,在插件弹出窗里。notify 在每次达到限制的时候都会触发一个简单的提示。 |
34 stardustedstand OP @MarginK 最后一句已经说了,这不是胜利,这只是一点点小小的抗争。 |
35 zhmouV2 348 天前 题外话,也不是所有人都喜欢无限滚动,或者也不是所有的东西都适合无限滚动。我记得谷歌搜索页就搞过 Infinite Scroll ,后来估计是被投诉太多取消了 |