网站推广ID号跟踪

xxx.html?referraluserid=123

referraluserid.js   JS源文件

referraluserid的参数会自动绑定页面A标签

有时是Post 表单跳转时不传数会丢失,这时可以根据后台或其它方式重新打印到前台页面,让Js重新获取到

<script type="text/javascript">

  var referraluserid = '<%=BackReferraluserid%>';// BackReferraluserid 为后台值绑定到Js变量

</script>

紧接着引用JS文件

<script type="text/javascript" src="/Scripts/referraluserid.js"></script>

document.write("<input type='hidden' id='referraluserid' name='referraluserid' />");

$(document).ready(function () {
$("a").each(function () {
if ($(this).attr("href") == "#" || $(this).attr("href") == "") {
$(this).attr("href", "/");
}
});
addUrlParse("referraluserid");
});
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;
} // typeof addUrlParse == "function" ? addUrlParse("referraluserid") : "";
function addUrlParse(ruid) { var ruidValue = GetQueryString(ruid);
if (typeof (referraluserid) != "undefined")
if (referraluserid != null && referraluserid != undefined && typeof referraluserid != "object" && (ruidValue == null || ruidValue == "" || ruidValue == undefined)) {
ruidValue = referraluserid;
}
if (ruid != "" && ruid != null && ruidValue != "" && ruidValue != null) {
var aStr = ruid + "=" + ruidValue; 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];
}
if (hrefstr.indexOf("#") == -1) { if (hrefstr.toLowerCase().indexOf(ruid + "=") == -1)
hrefstr = hrefstr + (hrefstr.indexOf("?") > 0 ? "&" + aStr : "?" + aStr);
if (jinghao != "") {
hrefstr += "#" + jinghao;
}
$(this).attr("href", hrefstr);
} }
});
}
catch (e) {
alert(e);
}
}
}
// var referraluserid = typeof getReferraluserid == "function" ? getReferraluserid() : "";
function getReferraluserid() {
return GetQueryString("referraluserid");
} //var and_href = typeof getReferraluserid_href == "function" ? getReferraluserid_href("?") : "";
function getReferraluserid_href(a) {
var href = "";
var referraluserid = GetQueryString("referraluserid");
if (referraluserid != null && referraluserid != undefined && referraluserid != "")
href = a + "referraluserid=" + referraluserid; return href;
}

referraluserid推广ID号跟踪JS处理A标签的更多相关文章

  1. 现代浏览器原生js获取id号方法

    <div id="tests" class="a b c" style="color:#f00">123</div> ...

  2. 【MVC 2】MVC+EF框架结构实例:注册ID号验证

    导读:本篇博客,将通过一个实例,详细介绍MVC+EF的应用.原理性的东西或者说是进一步的解耦和,请看博客: [框架结构 3]MVC+EF实体框架-原理解析.在这里,仅用MVC框架和一个EF生成的Mod ...

  3. 拿到添加对象的id号方法

    以前Hibernate添加对象,想拿到id号的时候都是根据id排序拿到第一条 ,才知道 这样也可以 /**         * @Description: 添加一个角色信息        * @ret ...

  4. 黄聪:WordPress 多站点建站教程(五):获取子站点用户信息(通过输入站点ID号来获取该站点的所有用户)

    得到站点ID为1的用户 <ul> <?php $blogusers = get_users('blog_id=1'); foreach ($blogusers as $user) { ...

  5. mysql删除重复记录语句,删除除了 id 号不同,其他都相同的学生冗余信息

    /** 在Mysql下执行: delete from my.stu where id not in( select min(id) id from my.stu group by code) ; 用途 ...

  6. VC 为静态控件添加事件(修改ID号以后添加事件)

    操作系统:Windows 7软件环境:Visual C++ 2008 SP1本次目的:为静态控件添加事件,如:STATIC.Picture Control等等 有时候我们找到一个图片,为对话框背景添加 ...

  7. 织梦(dedecms)如何清空全部文章和删除后新增文章id号归1的方法

    很多朋友在使用织梦程序做网站的过程中,难免需要添加一些测试文章用于测试网站功能模板等,还有些人朋友网站改版需要变更内容的时候,面对着众多的老文章后总是一筹莫展! 由于织梦后台并不自带一键删除整站文章的 ...

  8. 删除除了 id 号不同,其他都相同的学生冗余信息

    删除除了 id 号不同,其他都相同的学生冗余信息2.学生表 如下:id 号 学号 姓名 课程编号 课程名称 分数1 2005001 张三 0001 数学 692 2005002 李四 0001 数学 ...

  9. 基于ARM-contexA9-Linux驱动开发:如何获取板子上独有的ID号

    每个CPU,都有它固定的ID号,ID号就是这个CPU唯一的标识,它可能隐含着CPU的生产日期,版本号,型号等等,那么,在我们的这款友善之臂Tiny4412的板子上,我的这个CPU的ID又是多少呢?从我 ...

随机推荐

  1. redis.conf配置详解(转)

    # redis 配置文件示例 # 当你需要为某个配置项指定内存大小的时候,必须要带上单位,# 通常的格式就是 1k 5gb 4m 等酱紫:## 1k => 1000 bytes# 1kb =&g ...

  2. Linux配置Nginx负载均衡

    nginx配置负载均衡其实很简单,一直还以为负载均衡是个很高端人士玩的 首先先了解下负载均衡,假设一个场景,如果有1000个客户同时访问你服务器时,而你只有一台服务器的Nginx,且只有一个MySQL ...

  3. 42-字符串到json 的错误 com.alibaba.fastjson.JSONObject cannot be cast to java.lang.String

    json: {"updated_at":1551780617,"attr":{"uptime_h":3,"uptime_m&quo ...

  4. javascript第一天知识点

    JS的数据类型: 数字  number 字符串 string 布尔 boolean 空值 null 未定义的 undefined 数组 Array 对象 Object 通过typeof() 可以查看对 ...

  5. c# 运行大运算程序主窗体卡掉的解决

    写了一个运算过滤大文本的程序, 其中方法里边使用了多线程,并行线程等方法.  但主窗体控件直接使用此方法时,页面卡顿.所以主线程被堵塞. 代码如下, splitfile 这个方法运行时页面卡顿,阻塞了 ...

  6. hdu 5491(2015合肥网赛)The Next

    题目;http://acm.hdu.edu.cn/showproblem.php?pid=5491 题意就是,T组测试数据.然后L,S1,S2.L的二进制中有x个1,x满足  S1<=x< ...

  7. Linux内核哈希表分析与应用

        目录(?)[+]   Linux内核哈希表分析与应用 Author:tiger-johnTime:2012-12-20mail:jibo.tiger@gmail.comBlog:http:// ...

  8. gcd(欧几里得算法)

    基础 int gcd(int a,int b)   {       int r;       )       {            r=a%b;            a=b;           ...

  9. (O)编写可维护的代码示例(原创)

    图片轮播: /*广告图片数组*/ var imgs=[ {"i":0,"img":"images/index/banner_01.jpg"} ...

  10. asp.net web 服务器端全局定时执行任务

    web网站里面,需要每隔1分钟,执行一个任务,并且一直保持这个定时执行状态,可以用如下一个方法:    1,Global.asax里面的 Application_Start ,发生在第一次请求网站的时 ...