0

我有一个会员计数器,需要一次更新一个数字。下面是函数

function siteCounterUpdate(newMembership) {
    var oldMembership = $('span#indexSiteLastMembershipCount').text();
    var digit;
    newMembership = padString(newMembership, 9);
    $('ul#indexSiteCounterBottom').empty();
    for(i=0;i<9;i++) {
            if(newMembership.toString()[i] == '_') {digit = '&nbsp;';}else{digit = newMembership.toString()[i];}
      $('ul#indexSiteCounterBottom').append('<li>'+digit+'</li>');
      $('ul#indexSiteCounterBottom li:nth-child(3n)').addClass('extra-margin');
    }
    $('span#indexSiteLastMembershipCount').text(newMembership);
}
  1. 它接受新的成员,比如说 - 1010 个成员
  2. 它获得了保存在一个跨度中的旧成员资格 - 比如说 1000 个成员
  3. 如果字符串少于 9 位(这与计数器图像大小有关),它会用 nbsp 填充字符串 - 对于这个问题和工作正常来说并不重要..
  4. 然后它更新计数器并更新跨度。

这有效,但它一次将计数器从 1000 更新到 1010。我希望它一次计数一位数。例如:1001、1002、1003 等...

我相信我需要使用 setInterval() - 可能是 300 毫秒。我只是不确定如何将其放入此函数中,以便它自行循环。

任何建议都会很棒。

谢谢

4

1 回答 1

1

试试看:

var log = function(text){
  console.log(text);
  setTimeout(log, 300, text);
};
log("hey!");
于 2013-02-08T02:24:29.627 回答