想在 iPhone 或 iPad 的 Safari 上运行用户脚本,却发现苹果浏览器默认不支持 Tampermonkey?别担心,这一问题已有可行的解决方案。目前市面上主流的绕开限制的方式主要有四种,每种都有各自的适用场景和门槛。下面将逐一详细拆解,请大家根据自身需求选择最合适的方法。

如果你使用的是 iOS 15 及以上版本的设备,那么恭喜你,最省心的方法已经近在眼前。如果你是安卓用户,也有成熟的 Chromium 内核浏览器可以继续使用。至于开发者或轻度自动化爱好者,还有两条相对小众但非常实用的路子可供尝试。
一、使用 Stay for Safari 扩展(官方推荐方案)
Stay 这款扩展,可以说是目前 iOS 生态中唯一一个“正规军”——它已通过苹果审核,原生支持用户脚本注入,无需越狱,也无需折腾开发者模式。对大多数 iPhone 和 iPad 用户来说,这无疑是优先尝试的首选路径。
操作步骤非常直观:先进入「设置」→「Safari 浏览器」→「扩展」→「更多扩展」,然后跳转到 App Store 搜索「Stay for Safari」并下载。安装完成后,返回「设置」将 Stay 的开关打开。接着,在 Safari 中点击地址栏左侧的「AA」按钮,进入「管理扩展」,确认 Stay 已启用并将权限设置为「始终允许」。
再次点击那个「AA」按钮,选择「Stay」即可进入脚本中心。你可以直接在脚本中心搜索需要的脚本,或者从 Greasy Fork 这类脚本仓库中下载 .user.js 文件并导入,操作非常便捷。
二、通过 Kiwi Browser + Violentmonkey(安卓替代方案)
这套组合拳主要针对安卓手机或平板用户。Kiwi Browser 基于 Chromium 内核,完整支持 Chrome 的扩展机制,这意味着你在桌面端如何使用油猴,在移动端就能如何复制。而 Violentmonkey 在兼容性和资源占用方面,目前比 Tampermonkey 表现更友好一些。
操作上很简单:在 Google Play 中搜索 Kiwi Browser 并安装,启动后点击右上角三点菜单,找到「Extensions(扩展)」→「Add extension(添加扩展)」。然后访问 violentmonkey.github.io 官网,点击「Install Violentmonkey」按钮完成安装。安装好后,点击工具栏中的猴子图标,进入「Dashboard」,选择「Import script」导入你准备好的 .user.js 文件。之后访问目标网页时,脚本会根据 @match 规则自动触发,图标右上角还会显示运行数量。
三、启用 Safari 开发者模式加载本地脚本(开发者专用)
这条路门槛相对较高,适合越狱过的设备,或者手头有 Mac 可以进行远程调试的场景。其核心原理是通过 Web Inspector 注入未签名的脚本,不依赖 App Store 的扩展机制。但有一个明显的不足:脚本无法持久化,关闭页面就会失效,因此严格来说不太适合日常使用。
具体做法:在 iPhone 上进入「设置」→「Safari 浏览器」→「高级」,打开「Web 检查器」。然后将 iPhone 连接到 Mac,在 Mac 的 Safari 菜单栏中找到「开发」→ 选择你的设备名称 → 再选对应的网页标题,调出 Web Inspector 控制台。在控制台的「控制台」标签页中,粘贴 eval(源码字符串) 形式的注入代码即可。刷新页面后脚本生效,但关闭窗口后一切归零。
四、借助 Scriptable 应用间接调用(iOS 原生自动化方案)
Scriptable 本身并非油猴,但它是 iOS 上一款功能强大的 Ja vaScript 自动化工具。通过它,你可以模拟部分用户脚本的行为,尤其适用于只需轻量 DOM 操作或数据提取的场景。它走的是 Share Sheet 分享流程,而非自动注入,因此执行方式更接近“按需触发”。
在 App Store 下载 Scriptable 后,新建一个脚本,粘贴你写好的 JS 代码(可包含 fetch() 和正则解析逻辑)。然后在脚本顶部添加一行注释 // @include https://example.com/*,这行注释仅起标识作用,不会自动执行。使用时,在 Safari 中打开目标网页,通过分享菜单选择 Scriptable,预设的脚本便会开始处理页面 HTML,最终结果会以通知或弹窗的形式返回——比如提取视频直链、过滤广告节点等。
