一个简单的利用setTimeout实现的倒计时代码,有需要的朋友可以等的参考一下。
代码如下 |
|
function countdown(v,oid){
if(v==true){//先用ajax取得倒计时的基数(只有第一次运行这个函数的时候才会做)
$.get('json/get_countdown.php',function(data){
dtime = data;//得到秒
id = 'countdown';
t=setTimeout('countdown(false,'+oid+')',1000);
});
}else if(v==false){
clearTimeout(t);//这句很重要,不加这句的话在多次刷新页面的时候,倒计时会走的更快
h=checkTime(parseInt(dtime/3600));//计算小时
m=checkTime(parseInt(dtime/60%60));//计算分钟
s=checkTime(parseInt(dtime%60));//计算秒
$('#'+id).html(h+":"+m+":"+s);//将倒计时显示在一个html标签里面
dtime=dtime-1;
setTimeout('countdown(false,'+oid+')',1000);
}
|
json/get_countdown.php
代码如下 |
|
<?php
header("Content-Type: application/x-dom-event-stream");
while($time < 27) {
$time = rand(10,30);
echo "$timen";
echo "n";
flush();
sleep(3);
}
?>
|
运行:countdown(true,id);