2011-11-24 36 views
0

我想要做的就是這個jQuery的文本操作計數器

<span>0%</span> 

我想jQuery的從0開始計數%給定值。 我有3個跨度,每個都在0%,但是當我點擊,讓我們說一個按鈕,他們從0%,1%,2%,3%自動以一定的速度,直到它達到它的給定值例如... 99 %。這可能嗎?謝謝。!

我沒有使用圖像作爲數字,只有文本。沿着這些線路

+0

請清楚你的問題... –

回答

1

編輯:好的,一個單一的按一下按鈕應該揭開序幕的三個跨每去自動更新到一個不同的總:

<span id="percentSpan1">0%</span> 
<span id="percentSpan2">0%</span> 
<span id="percentSpan3">0%</span> 
<input id="startButton" type="button" value="Start"> 

<script> 
$("#startButton").click(function() { 
    var spans = {"percentSpan1" : 99, 
       "percentSpan2" : 40, 
       "percentSpan3" : 20}, 
     speed = 3000; // ms 

    for (var k in spans) { 
     (function(spanId) { 
     var currentPercent = 0, 
      intervalID = setInterval(function() { 
       $("#" + spanId).text(++currentPercent + "%"); 
       if (currentPercent === spans[spanId]) 
        clearInterval(intervalID); 
      }, Math.floor(speed/spans[spanId])); 
     })(k); 
    } 
}); 

</script> 

如果您所談論的三個跨度應該與單個按鈕相關聯,或者它們應該達到相同的最大百分比值,則您無法清楚說明,因此我將該部分留給您。

+0

沒有嗯每個跨度需要去一個點擊不同的值可以說一個去99%另一個到40和另一個到20% – donvitto

+0

也速度不夠快 – donvitto

+0

你可能已經做了很多更清晰的初步。無論如何,我已經更新了我的答案。關於速度:你認爲你需要做些什麼來解決這個問題? – nnnnnn

1

東西(測試這裏:http://jsfiddle.net/KP2BL/):

<span id="span1">0%</span> 
<input id="btn" type="button" value="Click Me"></input> 

<script> 
    jQuery("#btn").click(function() 
    { 
     var value = parseInt(jQuery("#span1").text()) 
     jQuery("#span1").text(value + 1 + "%") 
    }) 
</script> 
+0

嘿安德烈它可能只是一個點擊可以說一次點擊它開始以一定的速度從0%,1%,2%開始計算,直到達到99%然後停止。? – donvitto

+0

@donvitto - yep:這就是我在答案中已經做過的。 – nnnnnn