2012-04-11 49 views
0

下面是JavaScript代碼,它應該每隔1分鐘計算一次,但每20秒計算一次。javascript setInterval json請求

var tim = setInterval(doCount, 60000); 
var count = 0; 
var currency = "R$"; 
var stopit = 0; 
function doCount() { 
    stopit++; 
    if (stopit > 30) { 
     $.ajax({ 
     url: "URL", 
     cache: false, 
     dataType: "json", 
     success: function (json) { 
      $.get("URL"); 
     }, 
     error: function (e, xhr) { 

     } 
     }); 
     return false; 
    } 
    count += 1.99; 
    $("#number").html(
     currency + parseFloat(count).toFixed(2).replace(/\./g, ',') 
    ); 
    $.post("URL"}); 
} 
+0

嘗試將代碼粘貼到JSFIDDLE中,似乎每分鐘都會在這裏運行一次.. http://jsfiddle.net/w72R5/ :( – 2012-04-11 12:15:54

+0

您使用了哪種瀏覽器?你是否在另一個瀏覽器中進行交叉測試? – powerMicha 2012-04-11 12:25:23

+0

它確實在我的開發框中計數,但在實時服務器中它不會。你認爲服務器設置或客戶端問題?也chekced交叉測試 – memo 2012-04-11 12:32:47

回答

-1

如果我理解你的問題很好,你只需要改變60000毫秒至20000(20秒)

var tim = setInterval(doCount, 20000); 
+0

它已經計數了20秒,預計爲60秒,是1分鐘。 – 2012-04-11 12:11:52

+0

k,現在明白了:)完全誤讀了。 – 2012-04-11 12:13:24

0

嘗試包裹doCount函數內部這樣

var tim = setInterval(function() { 
     doCount(); 
}, 60000);