js 给页面所有的A标签加某个推广地址栏参数

//code by:博客园-曹永思

$(document).ready(function() {
    addUrlParse();
});

// 获取地址栏的参数数组
function getUrlParams() {
    var search = window.location.search;

    // 写入数据字典
    var tmparray = search.substr(1, search.length).split("&");
    var paramsArray = new Array;
    if (tmparray != null) {
        for (var i = 0; i < tmparray.length; i++) {
            var reg = /[=|^==]/;    // 用=进行拆分,但不包括==
            var set1 = tmparray[i].replace(reg, '&');
            var tmpStr2 = set1.split('&');
            var array = new Array;
            array[tmpStr2[0]] = tmpStr2[1];
            paramsArray.push(array);
        }
    }
    // 将参数数组进行返回
    return paramsArray;
}
// 根据参数名称获取参数值
function GetQueryString(name) {
    var paramsArray = getUrlParams();
    if (paramsArray != null) {
        for (var i = 0; i < paramsArray.length; i++) {
            for (var j in paramsArray[i]) {

                if (j.toLowerCase() == name.toLowerCase()) {
                    return paramsArray[i][j];
                }
            }
        }
    }
    return null;
}

//function GetQueryString(name) {

//    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
//    var r = window.location.search.substr(1).match(reg);
//    if (r != null) return unescape(r[2]); return null;
//}

//搜索后添加推广ID 2013年5月23日16:16:51
function addUrlParse() {
    var ruid = GetQueryString("referraluserid");
    //alert("ruid=" + ruid);
    if (ruid != "" && ruid != null) {
        var aStr = "ReferralUserId=" + ruid;

        var url = window.location.search;
        try {
            $("a").each(function(i) {
                var hrefstr = $(this).attr("href");
                if (hrefstr != null && hrefstr != "" && hrefstr.indexOf("javascript:") < 0) {
                    var jinghao = "";
                    if (hrefstr.indexOf("#") > 0) {
                        var arr = hrefstr.split("#");
                        hrefstr = arr[0];
                        jinghao = arr[1];
                    }
                    // hrefstr = hrefstr + (hrefstr.indexOf("?") > 0 ? url.replace("?", "&") : url);
                    if (hrefstr.toLowerCase().indexOf("referraluserid=") == -1)
                        hrefstr = hrefstr + (hrefstr.indexOf("?") > 0 ? "&" + aStr : "?" + aStr);
                    if (jinghao != "") {
                        hrefstr += "#" + jinghao;
                    }
                    $(this).attr("href", hrefstr);
                }
            });
        }
        catch (e) {
            alert(e);
        }


        /*
        var hrefstr = "";
        try {
        var url = window.location.search;

            $("a").each(function(i) {
        hrefstr = $(this).attr("href");
        //  alert(hrefstr.indexOf("referraluserid=") + aStr);
        if (hrefstr.indexOf("referraluserid=") == -1)
        $(this).attr("href", $(this).attr("href") + (hrefstr.indexOf("?") > 0 ? "&" + aStr : "?" + aStr));
        });
        }
        catch (e) {
        alert(e + "  + " + hrefstr);
        }
        
        */

    }
}
//搜索后添加推广ID 2013年5月23日16:16:51
function addSearUrlParse() {

    var ruid = GetQueryString("ReferralUserId");
    if (ruid != "" && ruid != null) {
        var aStr = "&ReferralUserId=" + ruid;
        return aStr;
    }
    return "";
}
        
        

 欢迎转载,转载请注明出处,希望帮到更多人。

原文地址:https://www.cnblogs.com/yonsy/p/3096538.html