哇,这让我把头发扯了.
$(".hdr a[id]").mousedown(function(e){
var h = this;
var url = "/g/click/" + this.id;
$.get(url);
});
看来有时浏览器会击败ajax调用.触发点击跟踪广告之前,将加载新页面. (这不是慢的响应时间;请求甚至没有达到apache的要求).这是断断续续的,并且不容易重现,但是在用户在网站上做了很多之后,它往往会出现.
我在此方法的早期迭代中使用了preventDefault,但最终导致cmd-click中断,并且不跟踪右键单击.
有没有办法确保它能够运行?
感谢你的帮助.
最佳答案
听起来像是当我问到$.post() doesn’t have time to run?时遇到的相同问题:对我来说,解决方案是将以下内容添加到组合中:
$.ajaxSetup({async: false});
不再执行异步请求意味着我的项目将在其他项目开始之前完成.