必须从系统级设置入手干预Safari后台页面回收:①关闭后台刷新;②禁用“自动关闭不活跃标签页”;③禁用问题网站JavaScript;④停用可疑扩展;⑤启用低数据模式。
当你在 Safari 中切换标签页后,页面在后台被强制销毁、切回来时重新加载,不仅丢失表单输入和播放进度,还会额外消耗流量——这不是网页自身行为,而是 macOS 或 iOS 系统为节省内存主动触发的后台页面回收机制,必须从系统级设置入手干预。
这一步必须最先执行,否则后续所有操作都会被覆盖。后台刷新会让 Safari 在你离开标签页后仍偷偷拉取新内容;而“自动关闭不活跃标签页”会在内存紧张时直接杀死页面 DOM,切回去就是一次全新加载。
① 点击屏幕左上角苹果图标 → “系统设置” → 左侧边栏“Safari”
② 点击右侧“高级”选项卡
③ 将【后台刷新】开关设为关闭(灰色状态)
④ 向下滚动,找到“节省内存时重新加载页面”或“自动关闭不活跃的标签页”,设为【永不】
多数自动重载由网页内嵌的 location.reload()、setTimeout 轮询或 <meta http-equiv="refresh"> 触发。禁用 JS 可直接阻断执行链路,但会同时禁用该网站所有交互功能(如登录、搜索、表单提交)。
方法一:
1. 打开 Safari → 顶部菜单栏“Safari” → “偏好设置”
2. 切换到“网站”标签页 → 左侧列表点选“JavaScript”
3. 右侧主区域搜索框中输入问题网站完整域名(例如:bankofchina.com)
4. 找到该条目后,将其右侧权限从“允许”改为【拒绝】
5. 关闭偏好设置窗口,重新加载该网站验证效果
广告拦截类扩展(如 AdGuard、1Blocker)常在页面空闲时注入清理逻辑,或劫持 pagehide 事件触发 reload()。它们不会报错,但会和系统内存回收机制叠加,让重载更频繁、更不可控。
1. 进入“Safari” → “偏好设置” → “扩展”标签页
2. 逐一关闭已启用的扩展,重点排查名称含 Refresh、Auto、Reload、Clean、Boost 等关键词的插件
3. 每禁用一个扩展后,返回问题网页并等待至少 10 秒,观察是否仍触发连续重载
4. 若某扩展禁用后死循环立即停止,则该扩展为确切诱因,应卸载而非仅停用,避免残留钩子持续注册事件监听器
低数据模式作用于系统网络栈,可强制延迟或丢弃 Safari 发起的预加载请求,包括预取的 HTML、图片、脚本等非关键资源,属于底层节流手段。
1. 打开“设置” → “蜂窝网络” → 开启“低数据模式”
2. 返回上一级,进入“Wi-Fi” → 同样开启“低数据模式”
3. 重启 Safari 浏览器,所有新标签页将遵循该策略,预加载请求被系统直接抑制