2012-04-11 6 views
0

아래는 1 분마다 계산해야하지만 20 초마다 계산해야하는 JavaScript 코드입니다.javascript setInterval json request

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

에서 봐, http://jsfiddle.net/w72R5/ .. 여기에 한 번 매 분마다 작동하는 것 같다 :(당신이 –

+0

어떤 브라우저를 사용 했습니까? 다른 브라우저에서 크로스 테스트 했습니까? – powerMicha

+0

실제로 예상대로 내 개발 상자에 계산하지만 라이브 서버에서는 문제가 서버 설치 또는 클라이언트 쪽 생각하지 않는다? 또한 횡단 테스트를 수행했습니다. – memo

답변

0
같은 함수 내부의 doCount을 포장하십시오

대체품을 제공하기 위해 jquery 플러그인을 살펴보십시오. doTimeout

는 특히 JSFIDDLE에 코드를 붙여 시도 polling examples

-1

내가 당신의 질문을 이해한다면, 당신은 20000 (20 초)에 60000 밀리 초를 변경해야

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

이미 20 초 동안 계산되고 예상되는 시간은 60 초입니다. 1 분입니다. –

+0

k, 지금 당장 :) 완전히 잘못 읽었습니다. –

0

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