我这里有个问题。我使用一个setInterval
函数将页面加载到 div 中,每 30 秒一次。嗯..在那个页面我有另一个setInterval
功能,它包括一个每秒改变一个数字的倒计时。问题是,一次倒计时会跳过 3 秒,即使它必须在一秒内回调。就像:01:24 -> 01:21 -> 01->19...
这是我的第一个 setinterval 的代码:
<script>
var t;
t=setInterval(function(){
$.get('<?=return_url("php/home_new.php");?>', { k: "1" } ).done(function(data){
if(data)$("#ex_start_test").html(data);});
},
30000
);
</script>
和倒计时代码:
<?
$query=q_return("SELECT nume, cod, data, MINUTE(data_start) as minute, data_start FROM chestionare WHERE data_start>date_sub(now(), interval 2 minute)");?>
<script>
var timp_c="<?=$query['minute'];?>";
var sec;
var min;
$.get('<?=return_url("php/getimp.php");?>', { k: "sec" } ).done(function(data){sec=data;});
$.get('<?=return_url("php/getimp.php");?>', { k: "min" } ).done(function(data){min=data;});
setTimeout(refresh, 1000);
function refresh(){
if(sec>=1){
sec=sec-1;
}else{
min=min-1;
sec=59;
}
if(sec<10){
$("span#ex_start_timp_ramas_sec").each(function(){
$(this).html("0"+sec);
});
}else{
$("span#ex_start_timp_ramas_sec").each(function(){
$(this).html(sec);
});
}
$("span#ex_start_timp_ramas_min").each(function(){
$(this).html(min);
});
if(sec==0 && min==0){
//$("#ex_click_final").trigger('click');
clearInterval(t);
$("#ex_new_test").hide();
}
setTimeout(refresh, 1000);
}
</script>