首页 > 技术文章 > JS实现定时器(类似工行网银支付限时操作)

liaokailin 2013-07-29 17:01 原文

 

js脚本内容:

//5秒倒计时
var num = 0 ;
var max = 5 ;
var id = null ; 
id = setInterval(box , 1000) ;  //1秒钟调用一次 
function box(){
   document.getElementById("a").innerHTML = (parseInt(max)-1)  ;
   max-- ;
   if(max==num){
     clearInterval(id) ;
	 alert("时间到!您无法操作") ;
   }  
}

html页面:

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
 <HEAD>
  <TITLE> Liaokailin </TITLE>
  <script src="demo.js"></script>
 </HEAD>

 <BODY>
   您还剩下 <font color = "red" ><span id="a"></span></font> 秒  
 </BODY>
</HTML>

  但是上面那种js用的是setInterval()这个方法,消除的时候需要按照id来消除,可能会存在一些同步的问题,从而采用setTimeout()这个函数,其代码如下:

//5秒倒计时
var num = 0 ;
var max = 5 ;
var id = null ; 
id = setTimeout(box , 1000) ;  //1秒钟调用一次 
function box(){
   document.getElementById("a").innerHTML = (parseInt(max)-1)  ;
   max-- ;
   if(max==num){
     clearInterval(id) ;
	 alert("时间到!您无法操作") ;
   }else{
     setTimeout(box,1000) ;
   }
}

  

 

推荐阅读