Javascript 跟踪链接的正确方式';点击
我正试图找到最详尽/兼容的解决方案来跟踪我网站中的一些链接 实际上,我有以下代码:Javascript 跟踪链接的正确方式';点击,javascript,jquery,Javascript,Jquery,我正试图找到最详尽/兼容的解决方案来跟踪我网站中的一些链接 实际上,我有以下代码: $(".article-content a").each(function() { $(this).click(function() { // Tracking code here }); }); 关于真实用户重定向处理有什么建议吗? 我想我们必须首先排除右键点击? 还要确保Ctrl单击、鼠标滚轮单击、触摸事件、键盘导航等。。。是否正确处理以触发,例如GA事件?制作如下内容 $(
$(".article-content a").each(function() {
$(this).click(function() {
// Tracking code here
});
});
关于真实用户重定向处理有什么建议吗?
我想我们必须首先排除右键点击?
还要确保Ctrl单击、鼠标滚轮单击、触摸事件、键盘导航等。。。是否正确处理以触发,例如GA事件?制作如下内容
$('.asdfasdf').mousedown(function(e) {
switch (e.which) {
case 1:
//Left Mouse button pressed
break;
case 2:
//Middle Mouse button pressed
break;
case 3:
//Right Mouse button pressed
break;
default:
//asdfasdf
}
});
这里有一些文档:试试jQuery与。比如:
$('.article-content a').mousedown(function(event){
var message = 'click';
if (event.ctrlKey) message += ' ctrl';
if (event.shiftKey) message += ' shift';
switch (event.which) {
case 1:
message = 'left ' + message;
break;
case 2:
message = 'middle ' + message;
break;
case 3:
message = 'right ' + message;
break;
}
alert(message);
});
使用带参数的函数来处理单击
$(".article-content a").each(function() {
$(this).click(function(e) {
if(e.ctrlKey) {
//Ctrl+Click
}
if(e.altKey) {
//Alt+Click
}
...
});
});
将e
记录到控制台以获取更多信息
您可以收听移动设备的其他事件:点击、按住、滑动、滑动……
$(".article-content a").on("tap",function(){
#element is tapped
});
我建议你采用以下方法
< a class="trackMouseClick" >I want to be tracked onclick< / a >
function mousedownHandler(e){
console.log('target element: ' + e.target + '\tbutton clicked: ' + e.which);
}
function tapHandler(e){
console.log('target element: ' + e.target);
}
$('.trackMouseClick').on('mousedown',function(e){
mousedownHandler(e);
}).on('tap',function(e){
tapHandler(e);
});
< a class="trackMouseClick" >I want to be tracked onclick< / a >
function mousedownHandler(e){
console.log('target element: ' + e.target + '\tbutton clicked: ' + e.which);
}
function tapHandler(e){
console.log('target element: ' + e.target);
}
$('.trackMouseClick').on('mousedown',function(e){
mousedownHandler(e);
}).on('tap',function(e){
tapHandler(e);
});
- 模块化:只需从DOM元素中添加和删除类,就可以添加和删除事件处理程序
- 解耦:使用类将DOM结构与目标实现的跟踪逻辑分离