javascript - 使用 Javascript 和 PHP 跟踪传出链接

标签 javascript php jquery click

我已经使用 jQuery 尝试过,但它不起作用。

<script>
    $("a").click(function () { 
      $.post("http://www.example.com/trackol.php", {result: "click"
  }, "html");
    });
</script>
<a href="http://www.google.com">out</a>

最佳答案

为了获得最佳结果,您应该在方法中改变两点

  1. 使用 onmousedown 而不是 click - 这样您就可以多花几毫秒来完成跟踪请求,否则浏览器可能根本不会启动与您的跟踪器的连接因为它已经离开了原始页面。缺点是你可能会得到一些误报计数,因为点击用户可能没有完成点击(例如,按住鼠标按钮并将光标从链接上移开)但总的来说,这是你应该愿意做出的牺牲 -考虑到更好的跟踪质量。
  2. 代替 Ajax 调用 ($.post('...')) 使用图像预取器 (new Image().src='...')。跟踪器不是图像这一事实在这种情况下无关紧要,因为无论如何您都不想使用生成的“图像”,您只想向服务器发出请求。 Ajax 调用是一种双向连接,因此它需要更多时间,并且如果浏览器已经离开,则可能会失败,但图像预取器只是将请求发送到服务器,如果你得到一些东西并不重要或者不是。

所以解决方案是这样的:

<script>
$(document).ready(function() {
    $("a").mousedown(function (){
        new Image().src= "http://www.example.com/trackol.php?result=click";
    });
});
</script>

<a href="http://www.google.com">out</a>

关于javascript - 使用 Javascript 和 PHP 跟踪传出链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2077823/

相关文章:

javascript - input[type ="file"] 确定用户是否未选择任何文件

php - 实现多个客户 list

jquery - 如何更改伪类属性?

javascript - 命令中错误 : EACCES, 权限被拒绝#yo angular

javascript - 单击 jQuery 启用图像裁剪

javascript - JQuery - 数据表错误 : Uncaught TypeError: Cannot read property 'className' of undefined

PHP、MySQL 错误 : Column count doesn't match value count at row 1

php - 没有正则表达式的句子大小写

javascript - 从 jQuery AJAX 动态创建 Bootstrap 下拉列表不起作用

javascript - 单击时缩放多个 div