有没有办法用Javascript跟踪焦点?

时间:2010-09-05 22:43:24

标签: javascript javascript-events event-handling google-analytics analytics

  • 我们需要跟踪用户现场的有效时间
  • 大多数用户完成后,会打开标签并移至另一个标签页
  • 网站上的时间非常不准确

是否有Javascript事件可以跟踪当前标签的“失去焦点”?

3 个答案:

答案 0 :(得分:11)

这应该在制表符开关和失去焦点的浏览器窗口上都有效:

function onBlur() {
    document.body.className = 'blurred';
};
function onFocus(){
    document.body.className = 'focused';
};

if (/*@cc_on!@*/false) { // check for Internet Explorer
    document.onfocusin = onFocus;
    document.onfocusout = onBlur;
} else {
    window.onfocus = onFocus;
    window.onblur = onBlur;
}

答案 1 :(得分:1)

我会对mousemovescroll执行某些操作,并将访问者计为活动状态,只要其中任何一个在某个时间间隔内触发即可。这也将覆盖他们让浏览器打开并离开计算机。

答案 2 :(得分:1)

您在谈论哪个标签?是导航/菜单选项卡还是浏览器选项卡。我觉得,你的意思是浏览器标签! 我认为这是不可能准确的。但是,如果你跟踪一些事件,如mousemove,focus等,然后在服务器上触发与某些数据(计数器)相同的事件,该怎么办?当用户在你的页面上时,他会做一些事情,比如移动鼠标,点击某处等。所以第一页加载和最后一个事件的区别可以告诉使用情况。