我在這裏有一個問題.. 我使用setInterval
函數加載一個頁面到div,每30秒一次。那麼..在該頁面中,我有另一個setInterval
函數,它包含一個每秒更改數字的倒數計時器。 問題在於,一次倒計時跳過3秒鐘,即使它必須在一秒內回調。 這就像:01:24 - > 01:21 - > 01-> 19 ...Javascript setTimeout裏面setInterval
這裏是我的第一個的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>
什麼返回getimp.php,實際分鐘,秒?將只與一個$ .get()調用更加一致 – Siot