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

求助:如何用JavaScript基于前置URL路径实现页面定向跳转

根据用户来源页面实现JavaScript重定向功能

别担心呀,刚接触JavaScript遇到这类问题太正常了!我来帮你一步步实现这个基于来源页面的重定向功能~

核心思路

我们可以利用浏览器提供的 document.referrer 属性获取用户跳转到当前页面的来源URL,然后通过条件判断将用户重定向到对应的目标页面。

完整代码示例

下面是直接可用的代码,你只需要把示例中的URL替换成你实际的页面地址即可:

// 获取用户的来源页面完整URL
const userReferrer = document.referrer;

// 定义来源页面与目标页面的对应规则
const redirectRules = {
  'https://your-site.com/page-1': 'https://your-site.com/page-2',
  'https://your-site.com/page-a': 'https://your-site.com/page-b'
};

// 检查来源是否匹配规则,匹配则执行重定向
if (redirectRules[userReferrer]) {
  window.location.href = redirectRules[userReferrer];
}

代码解释

  • document.referrer:这个属性会返回用户进入当前页面前的页面URL。如果用户是直接输入网址、通过书签打开页面,或者来源页面设置了禁止传递referrer,这个值会是空字符串。
  • redirectRules:用对象存储规则的好处是后续新增或修改重定向规则时,直接添加/修改键值对就行,非常容易维护。
  • window.location.href:设置这个属性会触发浏览器跳转到指定的URL。

额外技巧:模糊匹配来源页面

如果不需要严格匹配完整URL,只要来源页面包含特定路径就重定向(比如只要来自包含/page-1的页面就跳转到page-2),可以用字符串的includes()方法:

const userReferrer = document.referrer;

if (userReferrer.includes('/page-1')) {
  window.location.href = 'https://your-site.com/page-2';
} else if (userReferrer.includes('/page-a')) {
  window.location.href = 'https://your-site.com/page-b';
}

注意事项

  • URL的大小写、协议(http/https)都要和实际一致,否则匹配会失败。比如https://your-site.com/Page-1和https://your-site.com/page-1会被当成不同的来源。
  • 把这段代码放在当前着陆页的</body>标签之前,这样页面加载时会优先执行重定向逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:59:04