如何计算用户在当前页面停留的时间
情况是这样的,目前在做一个在线学习的系统,其中一个模块是文件学习,我做成了类似百度文库那种,当用户在阅读的时候就给用户计时,因为一个文件规定了要学习多长时间。
网上看到的方案有两种,一个是body的onfocus和onblur的事件,这种可以检测到页面最小化,或者是用户已经切换到其他页面。但是又一个问题是在阅读的页面里点击了某个链接计时就会失效,例如点击页面中flash文档的滚动条就会失效,点击一个下载链接就会失效。
还有一种就是:
<body>
<script>
function check(){
if(window.screenTop<-30000&&window.screenLeft<-3000)
{
alert('最小化');
}
else if(document.body.offsetWidth == screen.availWidth){
alert('最大化');
}
else
{
alert('不是最大化');
}
}
setInterval("check()",3000);
</script>这种代码
不过这样也有不足的地方,那就是如果用户不点击最小化,而是直接通过任务栏切换到其他页面的话,就检测不出来用户已经离开了。
所以特在此发帖请教各位大大。谢谢