有朋友问我这样一个问题,就是当用户停留在某个页面没有操作的时候,过一段时间就让系统自动的回到首页,开始的时候以为就是在服务器端判断session是否过期,但是前台JS不存在session对象,无法操作,或者说根本就是获取不到session对象,就算能够获取,处理的步骤也是相当繁琐的,后来一分析发现,这跟屏幕保护差不多,只要用户的鼠标不懂就要开始计时的,所以我用下面的代码实现了。具体如下:
<html>
<head>
<title>等待测试</title>
<script type="text/javascript">
var d1 = new Date();
function test(){
d1 = new Date();
}
window.οnlοad=function toback(){
var d2 = new Date();
var d = d2-d1;
div1.innerHTML = d;
if(d>10000){
window.location="test.jsp";
}
window.setTimeout("toback()", 1000);
}
</script>
</head>
<body οnmοusemοve="test()">
<center>
<div id="div1"></div>
</center>
</body>
</html>
看下代码也很简单,就是动态更新时间的问题。声明个全局的变量d1,在onload函数中比较全局变量与即时变量的差值,而这个全局变量是通过test函数动态赋值的,这样就完成了时间的动态比较,到此完成。