实时显示倒计时状态demo(附详细的注释)
admin
2023-06-30 21:23:31
0

本程序包含多个文件来讲解,当然你也可以根据实际情况进行合并。

index.html(非必须):首页显示,时间设定,测试的时候可以直接在文件里指定时间。

gettime.php(主要文件1):实时倒计时状态显示

gettime2.php(主要文件2):gettime每1秒请求一次的文件,返回此刻请求得到的数据

源码如下:

/** index.html **/


请输入活动开始时间:


window.onload=function(){
	var hour = document.getElementById('hour');
	hour.onblur=function(){
		if(hour.value>23||hour.value<0){
			alert('时间超出范围');
			return false;
		}
	}
	var min = document.getElementById('min');
	min.onblur=function(){
		if(min.value>59||min.value<0){
			alert('时间超出范围');
			return false;
		}
	}
	var sec = document.getElementById('sec');
	sec.onblur=function(){
		if(sec.value>59||sec.value<0){
			alert('时间超出范围');
			return false;
		}
	}
}


/** gettime.php **/
";
}
?>
/** ajax请求到的数据会存放在id='hh'的这个DIV里,
你也可以将返回的数据放在任何你想放的位置,只需要将它的id设置为与js里id相同即可。
注意这个脚本需要jQuery的支持(下载jq见文章结尾),所以请将jq文件引用到位。
**/
function gett(){ $(function(){         //接收index传过来的时间参数,并用ajax传递给gettime2.php进行判断         //测试的时候可以不需要index,直接在这里指定时间 var h=''; var m=''; var s=''; $.ajax({ url:'gettime2.php?h='+h+'&m='+m+'&s='+s, type:"POST", data:{action:"guesslike"}, dataType:"html", timeout:3000, cache:false, success:function(re){ $('#hh').html(re); } }) }); setTimeout("gett()",1000)  } gett(); /* gettime2.php 核心文件 */ 当前时间是:'.date("H:i:s" ,$time); //判断小时剩余>1 if($seth>date('H',$time)){ $h=$seth-date('H',$time); //判断分钟剩余>1 if($seti>date('i',$time)){ $i=$seti-date('i',$time); //判断秒剩余>1 if($sets>date('s',$time)){ $s=$sets-date('s',$time); }else{ $s=$sets-date('s',$time)+59; $i=$i-1; } }else{ //分钟剩余0 $i=$seti-date('i',$time)+59; $h=($h-1)>0?($h-1):0; //如果小时被借去1后等于0,则不用显示小时了 if($sets>date('s',$time)){ $s=$sets-date('s',$time); }else{ $s=$sets-date('s',$time)+59; } } if($h!=0){ echo "剩余时间还有:".$h."小时".$i."分".$s."秒"; }else{ echo "剩余时间还有:".$i."分".$s."秒"; } }else{ //判断小时剩余=0 $h=0; if($seti>date('i',$time)){ $i=$seti-date('i',$time); //判断秒剩余>1 if($sets>date('s',$time)){ $s=$sets-date('s',$time); }else{ $s=$sets-date('s',$time)+59; $i=$i-1; } echo "剩余时间还有:".$i."分".$s."秒"; }else{ //分钟剩余0 if($sets<=date('s',$time)){ echo "活动已经开始了"; }else{ //  $i=0; //分钟为0,可以显示,也可以不显示,本程序不显示 $s=$sets-date('s',$time); } if($s>=0){ echo "剩余时间还有:".$s."秒"; }else return false; } } ?> ##########################END################################

以上3段源码,复制过去,文件名对应,打开index就可以看到效果。

官方源jQuery2.1.1点此下载,各位也可以自行百度下载或者官方网站去下载。

相关内容

热门资讯

美防长:美伊谈判仍在继续,保留... △赫格塞思(资料图)当地时间5月30日,美国国防部长赫格塞思在新加坡香格里拉对话会上表示,美方力求美...
原创 华... 华为公布了一个名叫“韬定律”的东西。说出来你可能不信,这套新玩法,要把西方称霸了60年的芯片底层逻辑...
原创 华... 在华为畅享90 Plus和90 Pro Max取得出众的市场成绩之后,有消息指出,华为畅享90系列接...
一颗流星在美国马萨诸塞州上空爆... 当地时间5月30日,一颗流星在美国东北部马萨诸塞州近海上空爆炸,并引发巨响。该州多地居民均听到爆炸声...
鸿蒙智家框架合作协议签约仪式在... 5月29日,鲁班兄弟装饰工程有限公司与华为终端有限公司在华为云南区域总部举行鸿蒙智家框架合作协议签约...
中国科学院工程热物理所在超临界... 以超临界二氧化碳(S-CO₂)为代表的新型超临界流体正以其独特优势,在制冷、发电、储能等领域拓展应用...
5月31日,“蓝月亮”上线 5月31日,农历四月十五,一轮满月将现身夜空。这轮满月有些特别,它是本月第二次满月,同时它又是本年度...
原创 华... 华为在6月份的新品越来越丰富,比如智能手机、智能手表、耳夹式耳机、新一代全屋智能等,覆盖到多场景。其...
伊朗称对霍尔木兹海峡航运实施全... 据伊朗方面当地时间5月30日消息,伊朗武装部队哈塔姆安比亚中央总部说,伊朗对霍尔木兹海峡航运实施全面...
13人遇难“致命黑车”调查:座... 5月28日凌晨,一辆载满河南邓州周边等地乘客的大通客车,从浙江杭州出发赶回邓州,经过G40沪陕高速河...