手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >利用JS实现数字增长
利用JS实现数字增长
摘要:上次在项目中碰到要实现数字增长的效果,实现数字从0到目标数的增长,来看看效果图现在把它扩展开来可以实现不同效果主要思路就两部分1.每隔三个数...

上次在项目中碰到要实现数字增长的效果,实现数字从0到目标数的增长,来看看效果图

利用JS实现数字增长1

现在把它扩展开来可以实现不同效果

利用JS实现数字增长2

主要思路就两部分

1.每隔三个数字之间加上,

2.实现动起来

对于1使用正则来完成十分的方便

this.fomatNum = function(num) { var str = num.toFixed(this.option.decimal);//精确到小数位数多少位 var num1, x1, x2, reg; arr = str.split("."); x1 = arr[0]; x2 = arr.length > 1 ? '.' + arr[1] : ""; reg = /(d+)(d{3})/; if (this.option.isfomat) { while (reg.test(x1)) { x1 = x1.replace(reg, '$1' + "," + "$2"); } } if (this.option.isfomat) { return this.option.prefix + x1 + x2; } else { return this.option.prefix + str; } }

要实现加起来的效果可以使用requestAnimationFrame方法,然后处理一下兼容就可以了。

var change = function() { var p = Math.min(1.0, (new Date().getTime() - that.startTime) / that.option.duration);//当前时间减去开始时间,然后除以总时间,Math.min,两个数取最小值。 var nums = that.num * p; that.elm.innerHTML = that.fomatNum(that.num * p); if (p < 1.0) {// requestAnimationFrame(function() { change(); }); } else { cancelAnimationFrame(change); } } requestAnimationFrame(function() { change(); });

如果要实现数字在可视区再动起来的效果,可以自己监听dom是否在可视区然后调用。

以上就是本文的全部内容,如果有疑问欢迎大家留言探讨,也谢谢大家对查字典教程网的支持。

【利用JS实现数字增长】相关文章:

Nodejs实现批量下载妹纸图

原生js实现的贪吃蛇网页版游戏完整实例

JS实现模拟风力的雪花飘落效果

CheckBox 如何实现全选?

Javascript实现飞动广告效果的方法

jquery实现弹出层效果实例

javascript用函数实现对象的方法

JS实现1000以内被3或5整除的数字之和

jQuery实现返回顶部效果的方法

基于jQuery实现的无刷新表格分页实例

精品推荐
分类导航