2014-09-28 105 views
0

我已经看了一圈,我有点困惑。jQuery - 变量递增+1

似乎有几个回应我的特定问题,但我不完全明白。

所以如果有人能帮助那会很棒!

基本上,我设置一个变量

var firstThumb = "02" 

而且我想增加它

function thumbIncrease() { 
      firstThumb++ 
     }; 

在某个区间

setInterval(function(){ 
      getThumb.trigger("click"); 
      thumbIncrease(); 
     }, 5000); 

基本上我希望发生是 - 每5秒一个点击就被触发,我想我的firstThumb变量由1

所以02增加,点击,03,单击,04,单击....

因此每一次点击一不同的元素。

任何帮助将是伟大的!

谢谢!

编辑

感谢您的答复!我现在明白了!所以我得到0的原因对我来说比对代码更重要。我目前有15件事需要点击。 01和15是2个字符,这意味着我的代码看起来更整洁。我应该只是提起并删除0?还是有更好的方法呢?

I just like the way it lines up!!

+5

提示#1:' “02”'是一个字符串,而不是数字 – zerkms 2014-09-28 20:15:59

+0

好,这是一个字符串。如果你需要的话,你必须增加数字并有条件地将它与一个前导的'0'连接起来。 – bozdoz 2014-09-28 20:16:05

+0

它不工作的原因是因为你的变量是一个字符串,然后你试图将它转换为一个数字,然后在它的前面添加一个0 – 2014-09-28 20:16:10

回答

0

var counter = 1; 
 

 
setInterval(function() { 
 

 
    var _text = counter + "<br>"; 
 

 
    $("div").append(_text); 
 

 
    counter++; 
 
    
 
},5000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div> 
 
</div>

如果你想它来代替,而不是.append()

"01"老字号使用.html()是一个字符串,1是一个数字,你可以增加。

0

如果你只需要补零:

function pad(num, size) { 
    var s = num+""; 
    while (s.length < size) s = "0" + s; 
    return s; 
} 

var thumbNumber = "02"; 

thumbNumber = parseInt(thumbNumber); 
var nextNumber = pad(++thumbNumber,2); 

console.log(nextNumber); 

现场演示 - http://jsfiddle.net/v02vgw6w/2/

+0

只是为了指出这一点,这些日子里有'String.prototype.repeat',尽管它可能需要垫片。 – 2014-09-29 04:53:21