快捷导航

关于倒计时的函数

倒计时时钟body,div{margin:0;padding:0;}body{color:#fff;font:16px/1.5\5fae\8f6f\96c5\9ed1;}#countdown{width:300px;text-align:center;background:#1a1a1a;margin:10pxauto;padding:20px0;}input{border:0;width:283px;height:50px;cursor:pointer;margin-top:20px;background:url(img/btn-1.png)no-repeat;}input.cancel{background-position:0-50px;}span{color:#000;width:80px;line-height:2;background:#fbfbfb;border:2pxsolid#b4b4b4;margin:010px;padding:010px;}<script>window.onload=function(){        varoCountDown=document.getElementById("countdown");                varaInput=oCountDown.getElementsByTagName("input")[0];        vartimer=null;        aInput.onclick=function()        {                this.className==""?(timer=setInterval(updateTime,1000),updateTime()):(clearInterval(timer));                this.className=this.className==''?"cancel":'';                };        functionformat(a)        {                returna.toString().replace(/^(\d)$/,'0$1')        }        functionupdateTime()        {                varaSpan=oCountDown.getElementsByTagName("span");                varoRemain=aSpan[0].innerHTML.replace(/^0/,'')*60+parseInt(aSpan[1].innerHTML.replace(/^0/,''));                if(oRemain

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

三元运算 :  条件 true则执行 false 则执行;
if-else :  if( 条件 ){ true则执行; }else{ false则执行 }
其实一样的。
aInput.onclick 里面:
1、进行了判断是否input有className
如果空就启动定时器,不为空时清除定时器 timer

2、给input赋值className ,对应的值是:当前如果className空就赋值cancel,不空就赋值空。
同时,定时器绑定的是updateTime( ) :
1、获取了span标签,将两个span的中间内容取出并用正则替换,将开头的0替换成空,分钟*60+秒钟,就是一共几秒;

2、如果小于等于0,清楚定时器,return结束函数
3、继续执行的话,总秒自减,再利用format函数的正则替换,如果是一位数,则前面加上0再转string类型,int的话0开头输出又没了,format处理后返回给aSpan[0].innerHtml和aSpan[1].innerHtml;


定时器每秒执行一次
回复

使用道具 举报

点击button时候出发onclick事件调用update(),然后update()调用fomat()。if else可以写啊,出现什么问题 看一下
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP