这个问题涉及联盟营销,但实际上是关于在超链接到其他站点之前拦截超链接的一般性问题,您可以将访问者活动记录到数据库。
我的联盟营销客户有一个非常好的问题。想象一下,在给定种子关键字的情况下,您可以通过其API从亚马逊撤回产品。现在假设访问者点击其中一个产品在亚马逊上查看它。该产品的URL可能如下所示(这只是一个演示):
http://www.amazon.com/dp/B0042RU3Y0/?tag=xxxxxxxxxxxxxxxx-20
但是猜猜那有什么不对?它没有传递种子关键字。因此,我们不知道哪个种子关键字最有效。相反,她希望我们能够通过以下内容,然后以某种方式跟踪:
http://www.amazon.com/dp/B0042RU3Y0/?tag=xxxxxxxxxxxxxxxx-20&seed=laptops
我没有在亚马逊上看到任何文档,我们可以传递额外的参数,然后通过过滤器在报告中跟踪它们。
所以,我唯一能想到的就是我们需要在点击之前捕捉点击亚马逊。换句话说,在该事件冒泡并执行之前,在jQuery中我可以先拦截它,解析该超链接的href URL,添加这个额外的种子关键字信息,通过AJAX将其发送回PHP页面和数据库表,然后释放该click事件,以便执行它并且浏览器将关闭到Amazon。
有谁知道这是如何在jQuery中完成的?我知道AJAX部分 - 只是抓取点击的点击拦截部分,然后释放它。
答案 0 :(得分:22)
您可以将click事件绑定到所有锚标记,例如
$("a").click(function(){
// write your code
});
如果您想进行默认操作,请在此功能的末尾添加return true;
。
答案 1 :(得分:3)
var seed = "&seed=laptops";
$("a").live('click',function(){
$(this).attr('href', $(this).attr('href')+seed);
});