有没有一种好方法可以知道给定用户在 Web 应用程序的给定页面上花费了多长时间,准确度约为一分钟?
我想到的一个解决方案是使用 Javascript 每分钟访问一次 Web 服务,并在数据库中跟踪访问次数。但我想知道是否有更好的方法...是否有一种方法可以通过 Google Analytics 来完成此任务?如果是这样,怎么办?
最佳答案
首先,我同意有关分析软件的评论,您绝对应该研究它们以了解这种性质的事情。
我不知道这会有多好,我绝对不相信这是最好的方法,但如果你决心要做这个客户端,你也许可以尝试这样的事情:
var start = new Date().getTime();
window.onbeforeunload = function(){
var end = new Date().getTime();
alert( parseInt(end - start, 10)/60000 + " minutes" );
};
这里的想法是在用户访问您的页面后保存当前时间。一旦他们离开,onbeforeunload事件应该触发并运行函数来计算他们在页面上花费的时间。我想你可以添加一个ajax调用(或其他东西)一个同步调用来节省某个地方的总时间。
注意:jsfiddle 会阻止这些事件,但您仍然可以通过打开控制台在错误日志中看到输出。打开控制台后,只需点击 Run
即可触发事件。
编辑:
请参阅下面@Ian 关于在 onbeforeunload
事件中使用 AJAX 请求的评论。
关于javascript - 如何判断每个用户访问每个页面的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16045782/