Javascript 计数器的逗号分隔符?
我在一个我正在工作的网站上有一个工作号码计数器部分,我对JS了解不多,我有一些代码可以工作,但它破坏了前端并停止计数器。我希望有人能帮助我理解如何正确地组合我的各个部分 我分别尝试了这两个函数,也一起尝试了,可能是错误的。第二个处理千个逗号的函数可以工作,但是它将前端和计数函数踢出 我不确定#shiva元素发生了什么,但我已经用#counter整体替换了这个元素,因为该函数可以全面工作,而不仅仅是一个div元素。我刚才把两个都留在家里了,以防有别的办法 HTML: 分离器:Javascript 计数器的逗号分隔符?,javascript,Javascript,我在一个我正在工作的网站上有一个工作号码计数器部分,我对JS了解不多,我有一些代码可以工作,但它破坏了前端并停止计数器。我希望有人能帮助我理解如何正确地组合我的各个部分 我分别尝试了这两个函数,也一起尝试了,可能是错误的。第二个处理千个逗号的函数可以工作,但是它将前端和计数函数踢出 我不确定#shiva元素发生了什么,但我已经用#counter整体替换了这个元素,因为该函数可以全面工作,而不仅仅是一个div元素。我刚才把两个都留在家里了,以防有别的办法 HTML: 分离器: functi
function numberWithCommas(number) {
var parts = number.toString().split('.');
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
return parts.join('.');
}
$('#counter').each(function () {
var num = $(this).text();
var commaNum = numberWithCommas(num);
$(this).text(commaNum);
});
有人用一个类似于逗号的例子回答,你只需要根据你的情况调整它。读这里 设置动画后需要替换的计数器
$('.count').each(function () {
$(this).prop('Counter', 0).animate({
Counter: $(this).text()
}, {
duration: 2000,
easing: 'swing',
step: function (now) {
$(this).text(Math.ceil(now));
$(this).text(convert($(this).text()))
}
});
});
步骤:
- 循环遍历每个.count元素
- 用函数返回的结果替换每个.count数字
- 我们的函数使用regexp对字符串进行格式化、合并和联接
- 将.count中的值设置为新结果
const convert=str=>{
//找到号码
设regx=/(\d{1,3})(\d{3}(?:,|$)/;
//设置一个变量
让柯尔斯特;
//起动回路
做{
//替换当前字符串,拆分它
currStr=(currStr | | str.split(`.`)[0])
.replace(regx,`1,`2`)
}while(currStr.match(regx));//循环
//从函数返回我们的结果
返回(str.split(`.`)[1])?
currStr.concat(`.`,str.split(`.`)[1]):
currStr;
};
函数总数(){
设total=0;
$('.count')。每个(函数(){
设v=parseInt($(this.text());
总计=v+总计
})
返回总数;
}
$('.count')。每个(函数(){
$(this.prop('Counter',0)。设置动画({
计数器:$(this.text())
}, {
期限:2000年,
放松:"摇摆",,
步骤:功能(现在){
$(this.text(Math.ceil(now));
$(this.text)(转换($(this.text()))
}
});
});代码>
1688019
正文
82150
正文
10505
正文
168260
正文
有人用一个类似于逗号的例子回答,你只需要根据你的情况调整它。读这里
设置动画后需要替换的计数器
$('.count').each(function () {
$(this).prop('Counter', 0).animate({
Counter: $(this).text()
}, {
duration: 2000,
easing: 'swing',
step: function (now) {
$(this).text(Math.ceil(now));
$(this).text(convert($(this).text()))
}
});
});
步骤:
- 循环遍历每个.count元素
- 用函数返回的结果替换每个.count数字
- 我们的函数使用regexp对字符串进行格式化、合并和联接
- 将.count中的值设置为新结果
范例
const convert=str=>{
//找到号码
设regx=/(\d{1,3})(\d{3}(?:,|$)/;
//设置一个变量
让柯尔斯特;
//起动回路
做{
//替换当前字符串,拆分它
currStr=(currStr | | str.split(`.`)[0])
.replace(regx,`1,`2`)
}while(currStr.match(regx));//循环
//从函数返回我们的结果
返回(str.split(`.`)[1])?
currStr.concat(`.`,str.split(`.`)[1]):
currStr;
};
函数总数(){
设total=0;
$('.count')。每个(函数(){
设v=parseInt($(this.text());
总计=v+总计
})
返回总数;
}
$('.count')。每个(函数(){
$(this.prop('Counter',0)。设置动画({
计数器:$(this.text())
}, {
期限:2000年,
放松:"摇摆",,
步骤:功能(现在){
$(this.text(Math.ceil(now));
$(this.text)(转换($(this.text()))
}
});
});代码>
1688019
正文
82150
正文
10505
正文
168260
正文
Keep-id(#
)中第一个特定于单个元素,对多元素使用class-attribute语法我在Francis之前就有这种语法,但是格式化程序只在第一个div元素上工作,而不会跨所有四个。Keep-id(#
)中第一个特定于单个元素,对multi-element使用class-attribute语法我在Francis之前就有过这种情况,但是格式化程序只能在第一个div元素上工作,不能在所有四个元素上工作。这很好,但计数函数现在不起作用。@CaitlinMooney这不是要添加到代码中的。这是用来代替你的代码。它是完整的脚本和HTML。你把Javascript放在标签中,把html放在你的身体里。我知道你想要什么,你也想要一个计数器。是的,这就是我做的,现在计数器不计数,但是是静态的。我以前有一个计数器,可以从0到给定的数字进行动画处理。它可以与3.3.1/jquery.min.js
一起工作,但不能与jquery/jquery.min.js?ver=3.5.1
一起工作,但计数功能现在不起作用。@CaitlinMooney这不是要添加到代码中的。这是用来代替你的代码。它是完整的脚本和HTML。你把Javascript放在标签中,把html放在你的身体里。我知道你想要什么,你也想要一个计数器。是的,这就是我做的,现在计数器不计数,但是是静态的。我以前有一个计数器
$('.count').each(function () {
$(this).prop('Counter', 0).animate({
Counter: $(this).text()
}, {
duration: 2000,
easing: 'swing',
step: function (now) {
$(this).text(Math.ceil(now));
$(this).text(convert($(this).text()))
}
});
});