必须安装含【UM】或“UserScript”标识的米侠浏览器脚本版,开启【脚本注入】开关,在 miscript:// 管理页确认环境就绪;脚本需以 .user.js 保存为UTF-8无BOM编码,置于 /sdcard/MiXiaBrowser/scripts/ 目录,并正确声明 @match 与 @run-at 元数据。

你想在米侠浏览器里让某个网页自动填表、跳过弹窗、高亮关键词,或批量导出数据,但找不到现成脚本——这时必须亲手写一段 JavaScript 并让它稳定跑起来,不能只靠复制粘贴,得会写、会调、会修。
确认脚本运行环境已就绪
打开地址栏,输入 about:version → 查看版本号末尾是否含【UM】或“UserScript”字样。不含则当前安装包不支持脚本功能,必须卸载后重装官网“脚本版”安装包。
重启浏览器后,在地址栏输入 miscript://,能正常打开空白脚本管理页才算底层就位。若打不开,说明版本或开关仍有问题,后续所有调试都无效。
点击右上角三个点 → 设置 → 高级设置 → 找到【脚本注入】并开启。该开关是硬性前提,未开启时任何脚本代码都不会执行,且无任何报错提示。
选择调试路径:临时控制台 vs 持久脚本
方法一:用控制台快速验证逻辑(适合单次调试)
按 F12 打开开发者工具 → 切换到 Console 标签页 → 直接输入代码并回车。例如:console.log(document.title) 或 document.querySelector("button").click()。这一步见效最快,但刷新即失效,仅用于验证 DOM 是否可访问、选择器是否写对。
方法二:建正式脚本文件进行持久化调试(适合长期使用)
新建文本文件 → 用记事本另存为 UTF-8 无 BOM 编码 → 文件名必须以 .user.js 结尾(如 auto-fill.user.js)→ 存入 /sdcard/MiXiaBrowser/scripts/ 目录 → 重启浏览器触发扫描。
⚠️注意:若用 VS Code 或 Sublime 等编辑器保存,请手动选“UTF-8 without BOM”,记事本里选“UTF-8”默认带 BOM,会导致暴力猴解析失败且静默跳过该脚本。
编写可调试的脚本结构
第一步:写标准元数据块(@match 和 @run-at 必须显式声明)
在脚本开头粘贴以下模板,替换域名和时机:
// ==UserScript==<br>// @name 调试用脚本<br>// @namespace http://tampermonkey.net/<br>// @version 1.0<br>// @description 测试DOM操作与日志输出<br>// @author 用户<br>// @match https://example.com/*<br>// @run-at document-idle<br>// @grant none<br>// ==/UserScript==
第二步:包裹主逻辑进立即执行函数,避免变量污染全局作用域(function() { 'use strict'; // 此处写你的核心代码 })();
第三步:加入 console.log 输出关键节点状态
例如在查找按钮前加 console.log('开始查找提交按钮:', document.querySelectorAll('input[type="submit"]'));,这样能在控制台看到是否匹配到元素、数量是否为预期值。
第四步:用 try-catch 包裹易错操作,防止脚本因某行报错而中断后续执行try { document.querySelector('#pay-btn').click(); } catch (e) { console.warn('支付按钮未找到或不可点击', e); }
定位并修复常见执行失败原因
① 控制台报 Cannot read property 'xxx' of null → 元素未加载完成就执行了。把 @run-at 改为 document-end 或 document-idle,不要用 document-start(除非你真要劫持 fetch)。
② 脚本完全没反应,控制台也无日志 → 检查暴力猴是否启用自身脚本功能:点击暴力猴图标 → 左上角菜单 → 设置 → 通用 → 【启用脚本】必须为开启状态。这一步常被忽略,但它是暴力猴是否响应的总闸。
③ 页面 URL 明明匹配,脚本却不触发 → 进入暴力猴脚本列表页,点击对应脚本右侧的「编辑」→ 查看顶部 @match 行是否覆盖当前网址。例如当前页是 https://bilibili.com/bangumi/play/ep345678,而脚本只写了 @match https://bilibili.com/,就不匹配;应改为 @match https://bilibili.com/* 或更精确的 @match https://bilibili.com/bangumi/*。
④ 修改后仍不生效 → 强制清除暴力猴缓存:暴力猴主界面 → 左上角菜单 → 设置 → 高级 → 点击「重置所有脚本缓存」→ 重启浏览器。











