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

如何用jQuery或JavaScript捕获访问URL存为变量并重定向到新页面

你之前使用document.referrer获取的是用户进入当前页面前的上一级页面地址,所以只能拿到Google这类外部来源站地址,无法获取用户当前正在访问的本站页面。正确做法是直接读取当前页面地址window.location.href,编码后作为参数传递给splash引导页。

1. 全局重定向脚本修改

把原来的全局脚本替换为以下内容:

$(document).ready(function() {
  if (typeof Cookies.get('secondvisit') === 'undefined') {
    // 编码当前页面地址,避免特殊字符导致参数解析异常
    const originalPage = encodeURIComponent(window.location.href);
    // 拼接跳转参数后重定向到splash引导页
    window.location.href = `/index-donate.php?redirect=${originalPage}`;
  }
})

2. splash引导页(index-donate.php)逻辑补充

在引导页添加以下代码,实现跳转回原页面的逻辑,同时设置cookie避免后续重复重定向:

$(document).ready(function() {
  // 解析URL参数获取原页面地址
  const params = new URLSearchParams(window.location.search);
  let targetUrl = params.get('redirect');
  // 兜底处理:无跳转参数时默认跳转到首页
  if (!targetUrl) {
    targetUrl = '/';
  } else {
    targetUrl = decodeURIComponent(targetUrl);
  }
  // 绑定「前往网页」按钮的点击事件,按钮ID请和你实际页面的元素ID对应
  $('#jump-btn').click(function(e) {
    e.preventDefault();
    // 设置全局生效的cookie,有效期可自行调整,此处示例为365天
    Cookies.set('secondvisit', '1', { expires: 365, path: '/' });
    window.location.href = targetUrl;
  })
})

注意事项

  • 上述Cookie操作语法适配常用的js-cookie库,如果你使用自研的Cookie操作工具,对应调整读写语法即可
  • Cookie的path参数必须设置为/,否则可能出现站点子页面无法读取Cookie,导致重复触发重定向的问题
  • 该方案会完整保留原页面的查询参数、锚点信息,不会出现跳转后内容丢失的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 19:24:04