2012-04-26 6 views
1

私は、既製のjQueryプラグインには適していないと思われる奇妙なクライアント要求があり、実装に最善を尽くす方法を考えるのに苦労しています。2つの変数値の間のJqueryカウンターカウンターが一定の間隔で増加しています

基本的には、予想されるCO2排出量を表すカウンタです。 カウンタは前月の数字に基づいて実行されるという考えがあります。

毎月の初めにウェブ管理者が開始/終了値を設定します。

その後、ページは開始点(日付と開始点に基づいてPHPで計算されます)で読み込まれ、そこから5秒ごとに増分する必要があります。だから、例の

:私たちは、その時間中にカウントアップするために25,000台を持っていると思います

startValue = 200000; 
endValue = 225000; 
updateInterval = 5; /* seconds */ 

。 この25,000を1か月に5秒単位で分け、カウンターを5秒ごとに増やす必要があります。

私は最終的に理論を理解していると思いますが(私のクライアントは最も複雑な説明でそれを送っていました!)、私はそれに取り組む方法を考え出すのに苦労しています。

私はそれが簡単だと思います...しかし、途中で私を得るためにいくつかのポインタをありがとう!

おかげで、 スティーブ

+0

は、あなたはそれが最大に達するまでカウンタが5秒ごとに何かをしたいですか?それはあなたが求めていることですか? – jeremyharris

+0

申し訳ありません - 私はおそらくあまり明確ではありませんでした。私は同様の機能について狩りをして、これを見つけました:http://www.jugit.co.uk/ - そのサイトのホームページのカウンターを見てください。ここでの考え方は似ていますが、管理者はその月の開始日と終了日を設定し、月の経過とともにカウンターはAからBにカウントアップする必要があります。 PHP側では、ページのロード時に現在の日付と時刻に基づいて開始値が設定されます.jQueryは5秒間隔で数字を上げる必要があります(毎分12回更新) – steve

+0

次に、Ricardoの答え細かい:) – jeremyharris

答えて

1

何か助け

希望あなたの変数をインクリメント

setInterval(callYouFunction(), time interval in miliseconds) 

をmethid使用することができます。

HTML:

<div id="start">20</div> 
<div id="end"></div> 
<div id="interval">5</div> 

JS:

var start = 21; 
var end  = 25; 
var interval = 5000;  

var refreshIntervalId = setInterval(function(){ 
    if(start <= end){ 
     $("#start").text(start++); 
    }else{ 
     stop(); 
    } 
},interval); 

function stop(){ 
    clearInterval(refreshIntervalId);  
}​ 

Demo

+0

ありがとうリカルド - 正しい方向に大きなポインタ。 – steve

2

こんにちはあなたはジャバスクリプトのsetIntervalはその後、これが起動するかもしれない

関連する問題