-1

我正在尝试使用 javascript 实现非活动计时器

应该向用户显示确认“您在 2 分钟内处于非活动状态,请单击是继续”如果用户在 1 分钟内没有响应,则用户将被重定向到某个页面

<script type="text/javascript">
var firstTimer = 0;
var SecondTimer = 0;
   function closewindow() {          
       window.setInterval(ShowAlert, 1000);
              }

   function ShowAlert()
   {
   firstTimer++;
   SecondTimer++;
   if(firstTimer==2)
   {
   firstTimer=0;
   confirm('Do you want to Continue');
   }    

   }

   function FinalClose()
   {
    window.setInterval(ShowFinalAlert, 1000);
   }

   function ShowFinalAlert()
   {
   if(SecondTimer==3)
   {
   window.location.href="http://www.google.com";
   }
   }
</script>
<body onload="closewindow();FinalClose();">

上面代码的问题是如果用户没有响应第一个警报,第二个计时器没有触发,即当总计数为 3 分钟时,他应该被重定向。

上面的代码有什么问题。

4

1 回答 1

0

我会试试这个

var idle_timer = 120000; // check every 2 minutes    
var kick_timer = 60000;  // kick user after 1 minute

var redirect = function(){
  window.location = "http://google.com";
};

var idler = function(){ 
  // start the kick timer
  var kick_timer = setTimeout(redirect, kick_timer);

  // prompt user to click OK
  if (confirm("You get the boot in 60 seconds. Do you want the boot?")) {
    clearTimeout(kick_timer);
  }
  else {
    redirect();
  }
};

//schedule idler
setInterval(idler, idle_timer);
于 2013-06-21T23:23:29.430 回答