You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让注入浏览器控制台的脚本在页面重载后继续执行?

解决控制台注入脚本因页面刷新中断的方案

因为表单提交后页面会刷新,控制台注入的脚本会直接终止,用localStorage持久化任务队列和进度是最直接的可行办法,控制台注入场景完全适用,具体实现如下:

核心思路

把待提交的表单数据和当前执行进度存在浏览器的localStorage里,每次页面加载(包括提交后的刷新)时,检查localStorage里是否有未完成的任务:

  • 存在未完成任务时,处理当前索引的表单,提交前更新进度并存回localStorage
  • 所有任务完成后,清除localStorage里的任务数据

完整代码

直接将这段代码复制到浏览器控制台执行即可,后续页面刷新会自动继续执行任务:

// 替换成你实际的表单数据数组
var taskInputs = [
    { /* 第一条表单数据 */ },
    { /* 第二条表单数据 */ },
    { /* 更多表单数据 */ }
];

// 初始化或读取本地存储的任务状态
var taskState = JSON.parse(localStorage.getItem('autoFormTasks')) || {
    inputs: taskInputs,
    currentIndex: 0
};

// 处理未完成任务
if (taskState.currentIndex < taskState.inputs.length) {
    // 填充当前表单
    fillSomeForms(taskState.inputs[taskState.currentIndex]);
    
    // 更新任务进度并持久化
    taskState.currentIndex++;
    localStorage.setItem('autoFormTasks', JSON.stringify(taskState));
    
    // 提交表单,页面刷新后会继续处理下一条
    clickSubmit();
} else {
    // 任务全部完成,清理本地存储
    localStorage.removeItem('autoFormTasks');
    console.log('所有表单提交完成!');
}

注意事项

  • 首次执行前,务必把taskInputs替换成你实际的表单数据数组
  • 确保你已有的fillSomeForms和clickSubmit函数能正常工作
  • 如需中途终止任务,在控制台执行localStorage.removeItem('autoFormTasks')即可

内容的提问来源于stack exchange,提问作者Matteo NNZ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 00:55:18