我试图在我的号码显示屏上显示逗号
目前只有" 22"正在显示,但是还有另外6位数和2个逗号丢失....." 22,523,241"是完整的数字以及它在HTML上的显示方式。我写了以下脚本:
可在此处查看该页面:https://volocommerce.com - 您会看到问题中途停止,数字只是坚持,并且在逗号后不会显示任何内容....我很乐意得到这个排序,所以任何帮助将非常感谢:)
添加: -
现在整个HTML / javascript都是这样的(使用Wordpress的自定义字段)
<script src="/....../js/waypoints.min.js" type="text/javascript"></script>
<script>
$.fn.waypoint.defaults = {
context: window,
continuous: false,
enabled: true,
horizontal: false,
offset: 0,
triggerOnce: true
}
$('.facts_waypoint').waypoint(function(direction) {
function count($this){
var current = parseInt($this.html().replace(/[^0-9]/g, ''), 10);
if (current >= 1000000) {current = current +493023;}
else if (current >= 10000) {current = current +43749;}
else if (current >= 1000) { current = current + 7369;}
else { if (current >= 100) { current = current + 197;}
else {current = current + 1}
}
/*current = current + 100; Where 1 is increment */
$this.html(++current);
if(current > $this.data('count')){
$this.html($this.data('count'));
} else {
setTimeout(function(){count($this)}, 50);
}
}
jQuery(".count_one, .count_two, .count_three").each(function() {
jQuery(this).data('count', parseInt(jQuery(this).html(), 10));
jQuery(this).html('0');
count(jQuery(this));
});
});
</script>
<div class="home_stats">
<div class="container">
<div class="row">
<div class="col-md-12 padtop40 center">
<h2 class="green_txt title font50 mar0">
<?php if(get_field('stats_title')) { echo get_field('stats_title'); }?>
</h2>
<div class="grey_txt font20 marbot20">
<?php if(get_field('stats_subtitle')) { echo get_field('stats_subtitle'); }?>
</div>
<div class="row padtop40 font12">
<div class="col-md-4 marbot40">
<div class="grey_txt">
<?php if(get_field('stat_1_title')) { echo get_field('stat_1_title'); }?>
</div>
<div class="count_one orange_txt title font46">
<?php if(get_field('stat_1_number')) { echo get_field('stat_1_number'); }?>
</div>
</div>
<div class="col-md-4 marbot40">
<div class="grey_txt">
<?php if(get_field('stat_2_title')) { echo get_field('stat_2_title'); }?>
</div>
<div class="count_one orange_txt title font46">
<?php if(get_field('stat_2_number')) { echo get_field('stat_2_number'); }?>
</div>
</div>
<div class="col-md-4 marbot40">
<div class="grey_txt">
<?php if(get_field('stat_3_title')) { echo get_field('stat_3_title'); }?>
</div>
<div class="count_one orange_txt title font46">
<?php if(get_field('stat_3_number')) { echo get_field('stat_3_number'); }?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
我想要实现的是在正确的位置显示逗号,但我尝试使用LocaleNumber - 这没有用,只会导致数量增加。
答案 0 :(得分:2)
您需要替换以下行:
jQuery(this).data('count', parseInt(jQuery(this).html(), 10));
有了这个:
jQuery(this).data('count', parseInt(jQuery(this).html().trim().replace(/,/g, ""),10));
编辑:保存号码
var num = parseInt(jQuery(this).html().trim().replace(/,/g, ""),10);
如果你想要逗号:num.toLocaleString("en-US");
决定如何保存它
jQuery(this).data('count', num);
jQuery(this).data('count', num.toLocaleString("en-US"));
答案 1 :(得分:0)
换句话说,数字和字符串是两种不同的类型。数字必须是某种方式,在代码中:没有逗号。享受你的一天,伙计!