你是否厌倦了算法推荐下的信息茧房?是否怀念早期互联网时代那种漫无目的“冲浪”的惊喜?近日,一项名为“Frameset that displays random pages”(随机页面帧集)的轻量级网页工具在开发者社区引发热议。它巧妙利用早已淡出主流视野的HTML Frameset(框架集)技术,在单一浏览器窗口中同时加载多个随机网页,为用户带来一种类似“开盲盒”的浏览体验。
复古技术的意外重生
Frameset曾是上世纪90年代末至2000年代初网页布局的标配。当时,开发者通过<frameset>标签将浏览器窗口分割成多个独立区域,每个区域加载不同页面,常用于导航栏与内容区的分离。然而,由于存在SEO不友好、用户体验割裂、无法被搜索引擎索引等缺陷,随着HTML5标准推行和响应式设计崛起,Frameset于2011年被正式标记为过时(Deprecated),并于2012年被完全废弃。
但总有开发者喜欢“反其道而行之”。近期,一名匿名程序员在GitHub上发布了一个名为“Frameset Roulette”的实验性项目,其核心正是一段用纯HTML和JavaScript编写的Frameset代码——用户在浏览器中打开一个主页面后,页面会被分割成4个或6个等比例窗口,每个窗口会随机从预设的URL池中调取一个网页加载,且每隔30秒自动刷新一次所有窗口中的内容。开发者将其形容为“互联网的快速翻阅器”。
随机机制背后的逻辑
该项目的工作原理并不复杂:主页面定义一个<frameset>结构,通过<frame>标签指定每个子窗口的初始src属性为about:blank;随后,JavaScript脚本读取一个包含50个常见网站(如维基百科、BBC新闻、Reddit热门话题等)的数组,并利用Math.random()函数为每个窗口独立分配一个随机索引。为防止频繁跳转导致浏览器卡顿,项目还加入了节流函数,确保在30秒刷新周期内不会重复加载相同域名。
有趣的是,作者特意避开了社交平台和需要登录的网站,以避免隐私泄露。他写道:“这个工具就像一台老式收音机的旋钮,你永远不知道下一秒会收到哪个频道的信号。”
用户体验:混乱中的创作灵感
随机帧集上线后,在Hacker News和Product Hunt上迅速收获数百条评论。部分用户评价其“令人上瘾”——由于四个窗口同时独立滚动,视觉上形成一种奇特的蒙太奇效果:左侧可能是一篇科学论文,右上角是天气预报,左下角是猫咪图片,右下角则是一份Linux操作手册。有人称这种体验“让我重新感受到上网的随机性”,也有人认为“太杂乱,毫无意义”。
一个值得关注的场景来自创意领域。一位平面设计师在博客中分享,她将随机帧集作为灵感启发工具:“当我要做海报时,让四个窗口同时刷新,总能捕捉到意想不到的色彩组合或排版方式——尽管它们来自完全不相关的页面。”另有程序员将该项目与树莓派结合,在实体相框屏幕上运行随机帧集,作为客厅的“数字艺术装置”。
安全问题与局限
尽管趣味十足,但“随机页面帧集”也引发了技术专家的警示。安全工程师指出,Frameset中嵌入的页面若包含恶意脚本(如XSS攻击、自动下载程序),主窗口虽无法直接操作嵌入页面(受同源策略限制),但用户若在子窗口中点击链接或填写表单,风险依然存在。此外,多数现代网站已禁用X-Frame-Options标头,这意味着它们可能拒绝在框架中被加载。事实上,测试显示诸如Google、YouTube、Twitter等主流网站均会返回“拒绝连接”或显示空白,这使得预设URL池只能局限于少数允许被嵌入的站点。
旧技术的新启示
“Frameset that displays random pages”或许永远不会成为主流应用,但它引发的讨论已超越技术本身。在算法精准推送、信息流不断收敛的今天,这种“故意制造混乱”的方式,犹如一种数字时代的行为艺术——它提醒我们,互联网最初的魅力,恰恰在于那种不可预知的、近乎流浪式的探索。
正如一位网友在Reddit上所言:“我们不能永远待在智能管家为我们打扫好的房间里。有时候,推开一扇未知的门,哪怕里面只是一堆旧报纸,也比看着同一面墙有意思得多。”或许,这就是复古技术赋予当代网民的最新礼物:一次在信息洪流中随缘冲浪的勇气。