为什么谷歌浏览器在更新后原本正常的自定义脚本失效了?
最近不少用户反馈,Chrome更新到138及以上版本后,原本运行得好好的Tampermonkey、脚本猫等插件突然“罢工”了——点按钮没反应、定时器不跑、页面元素注入失败。别急着怀疑代码写错了,这大概率是谷歌在悄悄收紧Manifest V2的权限,导致这些脚本被静默拦截,连个报错提示都不给。 确认是
最近不少用户反馈,Chrome更新到138及以上版本后,原本运行得好好的Tampermonkey、脚本猫等插件突然“罢工”了——点按钮没反应、定时器不跑、页面元素注入失败。别急着怀疑代码写错了,这大概率是谷歌在悄悄收紧Manifest V2的权限,导致这些脚本被静默拦截,连个报错提示都不给。

确认是否被Manifest V2拦截
打开脚本所在的扩展文件夹,用记事本或VS Code打开manifest.json,看一眼首行是不是"manifest_version": 2。如果是,而且没有service_worker、host_permissions这些V3的必填字段,那基本可以断定:你的脚本被Chrome 138+直接拒载了——不弹窗、不报错、不加载,后台逻辑从一开始就“静默死亡”。
启用用户脚本功能(适用于油猴/脚本猫)
① 打开chrome://extensions/,找到Tampermonkey或ScriptCat插件,点“详情”。
② 往下翻,找到“允许用户脚本”开关——务必要打开。然后关闭再重新启用该插件,或者干脆重启浏览器。
注意:这一步只对Manifest V3版的插件有效。如果你的插件本身还是V2的打包结构,开了这个开关也没用。
绕过校验直接注入单文件脚本
方法一:控制台手动执行
打开目标网页,按F12切换到Console标签,把脚本全文粘贴进去,回车运行。简单粗暴,但每次刷新都得重来。
方法二:用data URL注入
地址栏粘贴类似这样的代码:ja vascript:(function(){/*脚本代码base64编码后放这里*/})();,回车执行。同样不依赖扩展,适合临时调试或紧急补救。
临时启用V2支持(仅限138–139.x版本)
方法一:通过chrome://flags
地址栏输入chrome://flags/#allow-legacy-mv2-extensions,设为Enabled,重启浏览器。
方法二:Windows注册表强制放行
Win+R输入regedit,导航到HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome,新建DWORD值ExtensionManifestV2A vailability,数值设为2。然后访问chrome://policy/点“重新加载政策”,重启浏览器。
注意:这个策略在Chrome 140+中已经被彻底移除,只对138-139版有效。当前最新版用户请直接看前两种方案。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















