我想要在用户点击我网站上的某个元素(clk
类)时加载跟踪像素。
我几乎没有任何jquery知识,所以我提出了这个代码:
$(".clk").click(function(){
$('<img src="/images/track.gif" width="1" height="1">').appendTo("body");
});
首先,那还不错吗? (浏览器是否有可能预装图像?我当然不想要这样做)
其次,只有第一次点击才能获得此信息。我不想跟踪来自同一访问者的该元素的任何额外点击(尽管不是通过IP - 我想我想在每个会话中执行此操作,这意味着如果窗口已关闭?还是应关闭整个浏览器?) 。
我应该在代码中添加什么才能使其以这种方式工作?
答案 0 :(得分:0)
浏览器有时会扫描JS并查找URL。您可以很容易地将其更改为更像:
var loaded = false;
$(".clk").click(function(){
if(loaded === false) {
loaded = true;
$('<img src="/images/track.gif?param=' + Date.now() + '" width="1" height="1" />').appendTo("body");
}
});
这应解决浏览器预加载和已经点击的问题&#34;的问题。您可以删除URL中的查询参数,但如果浏览器对此URL进行任何预取或caxginh,我会感到非常惊讶。
答案 1 :(得分:0)
我认为@Jessie A. Morris的例子还不错,但是为了确保浏览器不会缓存跟踪图像,我会亲自使用一些更随机的字符串(unix时间可以是一个好的开始)。
另一件事是 - 我们是否要跟踪每个会话或每个浏览器/ pc / ...的用户?
使用一些cookie&amp;&amp;那么HTML5 localstorage是合适的(存在许多JQuery插件)......