Javascript 在会话期间保持计时器一致

Javascript 在会话期间保持计时器一致,javascript,jsp,Javascript,Jsp,我试图在jsp中创建一个计时器,这样用户就可以为评估计时 但我希望即使在用户刷新页面时,时间也保持一致,因此计时功能只能在用户登录后调用,而不能在页面刷新后重新启动。例如,如果用户在第一个问题上,时间是40秒,当页面刷新时(例如,当他移动到下一个问题时),它仍应继续计数41、42、43等。是否可以使用javascript或servlet在jsp中记录运行时的时间,并保持时间的一致性(无论是否对用户隐藏)。任何一道亮光都受到高度赞赏。我有以下的WOKR可以,但当我刷新时,它会重新启动 <sc

我试图在jsp中创建一个计时器,这样用户就可以为评估计时 但我希望即使在用户刷新页面时,时间也保持一致,因此计时功能只能在用户登录后调用,而不能在页面刷新后重新启动。例如,如果用户在第一个问题上,时间是40秒,当页面刷新时(例如,当他移动到下一个问题时),它仍应继续计数41、42、43等。是否可以使用javascript或servlet在jsp中记录运行时的时间,并保持时间的一致性(无论是否对用户隐藏)。任何一道亮光都受到高度赞赏。我有以下的WOKR可以,但当我刷新时,它会重新启动

<script>  
 <!--  
 <%  
   String clock = request.getParameter( "clock" );  
       if( clock == null ) clock = "60";  
 %>  
      var timeout = <%=clock%>;  
      function timer()  
        {  
        if( --timeout > 0 )  
    {  
     document.forma.clock.value = timeout;  
      window.setTimeout( "timer()", 1000 );  
   }  
    else  
      {  
     document.forma.clock.value = "Time over";  
       ///disable submit-button etc  
        alert("Sorry but time is up spud muhahahaha");
       }  
     } 

    </script>  


使用JSP中的会话对象存储时钟的开始时间。 计算与当前请求时间的差异,并将其填充到JS var“timeout”中

如果时间结束,用户进行刷新(F5,后退按钮),您可以更改页面内容

可能每个问题都需要一个单独的计时器