js倒计时,刷新不重记

js倒计时,实现起来不难,但是刷新往往就重新计算了,如果要实现刷新不重计该如何做呢?有这么几种思路,1:cookie 2:本地缓存 3:window.name ……

前两种比较容易理解,今天我来为大家实现以下使用window.name实现刷新不重计,代码如下:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>js倒计时-刷新不重计</title>
</head>

<body>
<SCRIPT LANGUAGE="JavaScript">
<!--
var maxtime;
if(window.name==''){ 
    maxtime = 1*60;
    }else{
    maxtime = window.name;
}

function CountDown(){
    if(maxtime>=0){
        minutes = Math.floor(maxtime/60);
        seconds = Math.floor(maxtime%60);
        msg = "距离考试结束还有"+minutes+"分"+seconds+"秒";
//        document.all["timer"].innerHTML = msg;
        document.getElementById("timer").innerHTML = msg;
        if(maxtime == 5*60) alert('注意,还有5分钟!');
        --maxtime;
        window.name = maxtime; 
    }
    else{
        clearInterval(timer);
        alert("考试时间到,结束!");
    }
}
timer = setInterval("CountDown()",1000);
//-->
</SCRIPT>
<div id="timer" style="color:red"></div> 

</body>
</html>

3 comments:

评论已关闭。