必须开启系统级「允许运行脚本」开关,否则Safari中快捷指令的JavaScript操作静默失败;需在设置→快捷指令中启用,并通过Safari共享表单调用,仅支持Safari、SFSafariViewController或ASWebAuthenticationSession网页。
你想在 Safari 浏览器中自动完成网页任务,比如提取页面标题、批量保存链接、修改视频播放速度或滚动到页面顶部,不需要手动复制粘贴或反复点击。
第一步必须打开系统级开关,否则所有脚本操作都会静默失败。进入「设置」→「快捷指令」→ 开启「允许运行脚本」。这一步不可跳过,【关闭状态下,快捷指令里的 JavaScript 操作完全不执行,且无任何提示】。
返回 Safari,任意打开一个网页,确保地址栏可见——这是后续所有操作的输入源。
这个指令能一键抓取当前网页标题和 URL,并存入备忘录。
方法一:手动构建
1、打开「快捷指令」App → 点右上角「+」→「新建快捷指令」。
2、点「添加操作」→ 搜索「在网页上运行 JavaScript」→ 添加该操作。
3、在脚本框中粘贴以下代码:
const title = document.title;
const url = window.location.href;
completion({title, url});
4、再加一个「获取字典值」操作,键名填「title」;接着再加一个「获取字典值」,键名填「url」。
5、最后添加「添加到备忘录」操作,标题设为「网页快照」,内容填入两个字典值拼接的文本。
方法二:直接复用现成模板
在「快捷指令中心」搜索「网页信息提取」,找到官方提供的同名快捷指令,点「添加快捷指令」即可。它已预置好 JS 脚本和输出逻辑,省去手写代码环节。
必须通过共享表单调用,其他入口无效。
第一步:配置快捷指令可见性
进入刚建好的指令编辑页 → 点右上角「⋯」→「详细信息」→ 开启「在共享表单中显示」→ 在「接受的类型」中仅保留「Safari 浏览器网页」,其余全部取消勾选。
第二步:实际调用
回到 Safari,打开任意网页 → 点击地址栏旁的分享按钮(□↑)→ 向上滑动找到「快捷指令」分类 → 点开后选择你的指令名称。
第三步:验证执行效果
指令运行后会自动弹出备忘录新条目,内容含当前网页标题与完整 URL。若未出现,请检查是否在非 Safari 应用中误触了分享按钮——【只有 Safari、SFSafariViewController 或 ASWebAuthenticationSession 中的网页才能作为有效输入】。
滚动到顶部
新建快捷指令 → 添加「在网页上运行 JavaScript」→ 脚本栏填:window.scrollTo(0, 0); → 完成。无需 completion(),纯行为脚本。
加速 YouTube 视频
脚本内容为:
const video = document.querySelector('video');
if (video) video.playbackRate = 1.5;
提取所有图片链接
脚本内容为:
const imgs = Array.from(document.querySelectorAll('img')).map(i => i.src);
completion(imgs);