【问题标题】:how I change the URL that will be loaded according to document.referrer如何更改将根据 document.referrer 加载的 URL
【发布时间】:2021-04-08 18:27:57
【问题描述】:

我需要根据用户来自的网站将用户定向到某个 URL。

<script>
    function abc(){
    var ref = document.referrer;
    if (ref = /site1/) {
    window.location.href = "https://www.site1.wow";
    } else if (ref = /site2/) {
    window.location.href = "https://www.site2.wow";
    } else {
    window.location.href = "https://www.site.wow";
 }
}
</script>

新版本,但仍无法正常工作,返回未定义

function getParam(_parameter){
const parameters = new URLSearchParams(window.location.search);
if (parameters.get("utm_medium") && parameters.get("utm_medium") === "facebook") {
window.location.href = 'https://link1.wow', '_blank';
} else if (parameters.get("gclid=") && parameters.get("gclid=") === "gclid=") {
window.location.href = 'https://link2.wow', '_blank';
} else {
window.location.href = 'https://link.wow', '_blank';

} }

【问题讨论】:

标签: javascript


【解决方案1】:

你必须以不同的方式来做:

const parameters = new URLSearchParams(window.location.search);

这将从实际站点获取所有参数。 现在您必须测试它是否具有您正在寻找的参数,例如:

if(parameters.get("utm_source") && parameters.get("utm_source") === "abc"){
 console.log("It has this parameter")
}

【讨论】:

  • 我需要知道站点是否有参数utm_medium或gclid。
  • @LuizFelipeMachado 参数?你说的参数是什么意思?它在网址中有这个吗?例如“something/gclid/test.com”之类的?
  • 类似 "site1.ai/…" 如果 URL 有 utm_source = abc,它会将您定向到第一个 URL,如果它有一个 gclid = 参数,它会定向到另一个 URL,如果它没有参数, 到第三个 URL。
  • @LuizFelipeMachado utm_source = abc?你的意思是像“example.com/?utm_source=abc”这样的url里面的参数?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-26
  • 2010-12-19
  • 2011-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多