如何用JavaScript制作适配iOS轻点背面、可执行history.back()回退网页的快捷指令
Backtap联动实现网页回退的可落地配置方案
快捷指令核心配置步骤
- 打开系统自带「快捷指令」App,点击右上角加号新建快捷指令,自定义命名为「网页回退」
- 在动作检索栏筛选「Safari」分类,选择添加**「在Safari网页上运行JavaScript」**动作
- 清除动作内置的示例脚本,替换为单行执行代码:
history.back(); - 完成后保存快捷指令配置
Backtap绑定配置
- 进入系统「设置」→「辅助功能」→「触控」→「轻点背面」
- 按需选择触发手势(轻点两下/轻点三下)
- 在动作列表中选中已创建的「网页回退」快捷指令完成绑定
此前尝试失效的常见原因
- 错选了通用版「运行JavaScript」动作:这类动作没有当前Safari页面的执行上下文,无法调用浏览器内的history接口,你之前尝试的
function(goBack)写法、自定义脚本逻辑在这个错误的动作容器里都无法运行 - 直接将
javascript:history.back()作为跳转URL类动作配置:iOS Safari从13版本开始会拦截手动注入的伪URL脚本,不会执行对应JS逻辑 - 首次触发时未授予网页执行权限:需要在第一次动作触发弹出的权限申请弹窗中,允许快捷指令获取当前Safari页面的脚本执行权限,否则脚本会静默失败
实际触发时需要让Safari处于前台激活状态,这个快捷指令只会对当前打开的Safari标签页执行回退,不会跨App调取其他页面的历史记录。
内容的提问来源于stack exchange,提问作者Andrew Polizia
相关产品推荐
相关产品推荐

