我有一个javascript计数器(效果很好),现在添加了逗号,也可以。逗号显示,但它只显示计数器递增的时间。它实际上是4个计数器和一个总计数器。 3个计数器经常增加,这不是一个问题,但我需要逗号显示页面加载,因为有背景而不是计数器递增时。我认为它与我调用addCommas()的位置有关,但是当我以不同的方式调用它时无法使它工作。我会抛出一些代码:
var crate_msInterval = crate_interval * 1000;
crate_count = parseInt((now - start_date)/crate_msInterval) * increment + start_value;
document.getElementById('crate_counter').innerHTML = crate_count;
setInterval("crate_count += increment; document.getElementById('crate_counter').innerHTML = addCommas(crate_count);", crate_msInterval);
然后是我正在使用的逗号函数:
function addCommas(str){
var arr,int,dec;
str += '';
arr = str.split('.');
int = arr[0] + '';
dec = arr.length>1?'.'+arr[1]:'';
return int.replace(/(\d)(?=(\d{3})+$)/g,"$1,") + dec;
}
我希望我足够清楚。有什么建议? THX!
答案 0 :(得分:0)
只需在页面加载时调用函数addCommas
并设置元素innerHTML。您也可以将匿名函数传递给setInterval方法,而不是将代码指定为字符串。
var crate_msInterval = crate_interval * 1000;
var crate_count = parseInt((now - start_date)/crate_msInterval) * increment + start_value;
document.getElementById('crate_counter').innerHTML = crate_count;
setInterval(function(){
crate_count += increment;
document.getElementById('crate_counter').innerHTML = addCommas(crate_count);
}, crate_msInterval);
//This will set the initial value formatted with comma's
document.getElementById('crate_counter').innerHTML = addCommas(crate_count);
答案 1 :(得分:0)
在你的标签中,你可以有一个onload参数,它可以在页面加载后调用传递给它的javascript。