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

如何让同一JQuery代码在跳转后的新页面中自动运行

关于跨页面自动执行同一段JS代码的实现方案

默认情况下该需求无法直接实现:浏览器中每个页面是完全独立的运行环境,页面跳转后前序页面的控制台上下文、已执行代码状态都会被销毁,新页面会加载全新的DOM和JS执行环境,无法直接继承前页手动执行的代码逻辑。

如果你需要在多个跳转页面中自动运行相同代码,可根据使用场景选择以下实现方案:

方案1:使用用户脚本管理器(最适合个人自动化脚本场景)

通过Tampermonkey、Violentmonkey等用户脚本扩展,你可以提前编写好要执行的代码,配置脚本匹配所有需要运行该代码的站点域名规则,所有符合匹配规则的页面加载完成后,脚本会自动执行,无需手动输入或触发。
示例脚本结构:

// ==UserScript==
// @name         多页面自动执行脚本
// @match        *://你的目标域名/*
// @grant        none
// ==/UserScript==

// 这里写你要自动执行的代码
const redirectToAnotherPage = document.querySelector(".redirect")
console.log("executed")
if(redirectToAnotherPage) redirectToAnotherPage.click()

方案2:同域页面使用本地存储传递执行逻辑

如果所有涉及的页面都属于同一个域名,可以通过sessionStorage共享要执行的代码逻辑:

  • 前序页面存储代码:
// Page1 执行逻辑
sessionStorage.setItem('autoRunCode', `
const redirectToAnotherPage = document.querySelector(".redirect")
console.log("executed")
if(redirectToAnotherPage) redirectToAnotherPage.click()
`)
const redirectToAnotherPage = document.querySelector(".redirect")
redirectToAnotherPage.click()
  • 目标页面加载时自动读取执行:
// 所有涉及页面都加入这段逻辑
window.addEventListener('load', () => {
  const runCode = sessionStorage.getItem('autoRunCode')
  if(runCode) {
    eval(runCode)
    sessionStorage.removeItem('autoRunCode') // 执行完可清除避免重复执行
  }
})

注意:该方案受浏览器同源策略限制,跨域场景下无法共享存储内容。

方案3:使用浏览器自动化测试工具

如果你是做批量自动化流程,可以使用Playwright、Puppeteer、Selenium等自动化工具,直接在工具的控制脚本中定义全局执行逻辑,不管页面如何跳转,都可以在新页面加载完成后自动注入并执行指定代码,不受跨域限制。

方案4:使用浏览器内置代码片段功能

如果不想安装扩展,可使用Chrome、Edge等浏览器DevTools自带的Snippets功能,将常用代码保存为代码片段,新页面打开后只需要在Sources面板的Snippets菜单里点击对应片段运行即可,无需重复复制粘贴代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 13:54:00