簡體   English   中英

使用Javascript將UTM參數傳遞給按鈕URL

[英]Passing UTM Parameters using Javascript to Button URL

在這里,我有一個代碼,該代碼應該在url中采用utm參數,並將其傳遞給具有特定href域的所有按鈕。 但是,此代碼在第12行字符27(這是帶有for循環的行)上運行了編譯錯誤,我不明白為什么。 有人可以幫忙嗎? 謝謝

<script type="text/javascript">

(function() {
var utmInheritingDomain = "https://www.motorstore.com/amr_en/checkout/", 
utmRegExp = /(\&|\?)utm_[A-Za-z]+=[A-Za-z0-9]+/gi,
links = document.getElementsByTagName("a"),
utms = [
"utm_medium={{utm_medium}}", 
"utm_source={{utm_source}}", 
"utm_campaign={{utm_campaign}}", 
];

for (var index = 0; index 0) { 
tempLink = tempLink.replace(utmRegExp, "");

tempParts = tempLink.split("#");

if (tempParts[0].indexOf("?") < 0 ) {
tempParts[0] += "?" + utms.join("&"); 
} else {
tempParts[0] += "&" + utms.join("&");
}

tempLink = tempParts.join("#");
}

links[index].href = tempLink;
}
}());

</script>

似乎您的}過多,並且for循環無效

(function() {
    var utmInheritingDomain = "https://www.motorstore.com/amr_en/checkout/", 
    utmRegExp = /(\&|\?)utm_[A-Za-z]+=[A-Za-z0-9]+/gi,
    links = document.getElementsByTagName("a"),
    utms = [
        "utm_medium={{utm_medium}}", 
        "utm_source={{utm_source}}", 
        "utm_campaign={{utm_campaign}}", 
    ];

    // Invalid for loop
    // for (var index = 0; index 0) {
    for (var index = 0; index < links.length; index++ 
        tempLink = tempLink.replace(utmRegExp, "");

        tempParts = tempLink.split("#");

        if (tempParts[0].indexOf("?") < 0 ) {
            tempParts[0] += "?" + utms.join("&"); 
        } else {
            tempParts[0] += "&" + utms.join("&");
        }

        tempLink = tempParts.join("#");
    }

    links[index].href = tempLink;
    // } <- this one
}());

同樣,您的tempLinktempParts變量也未在任何地方定義。

你想讓它說一些

for (var index = 0; index < links.length; index++) { 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM