js数字累加 · 递增动画 - 封装篇

js数字累加 · 递增动画 - 代码可封装


代码如下:

<!DOCTYPE html> 
<html> 
 <head> 
	<meta charset="UTF-8"> 
	<title>数字自动增加</title> 
</head> 
<body>
	<p>
		<font size="5" id="time">0</font> 
		<font size="5" color="orangered">%</font>	
	</p>
	
<script src="jquery.min.3.1.0.js" type="text/javascript" charset="utf-8"></script>
<script> 
//数字自增到某一值动画参数(目标元素,自定义配置) 
function NumAutoPlusAnimation(targetEle, options) {
    /*可以自己改造下传入的参数,按照自己的需求和喜好封装该函数*/ 
    //不传配置就把它绑定在相应html元素的data-xxxx属性上吧 
    options = options || {};
    
    var $this = document.getElementById(targetEle), 
    	time = options.time || $this.data('time'), //总时间--毫秒为单位 
        finalNum = options.num || $this.data('value'), //要显示的真实数值 
        regulator = options.regulator || 100, //调速器,改变regulator的数值可以调节数字改变的速度 
		step = finalNum / (time / regulator),/*每30ms增加的数值--*/ 
        count = 0, //计数器 
	        initial = 0; 
 
        var timer = setInterval(function() { 
	        count = count + step; 
	        if(count >= finalNum) { 
	        	clearInterval(timer); 
	        	count = finalNum; 
	        } 
	        //t未发生改变的话就直接返回 
        //避免调用text函数,提高DOM性能 
        var t = Math.floor(count); 
        if(t == initial) return;
        initial = t;
        $this.innerHTML = initial; 
    }, 30); 
} 

// 调用函数,实现效果
var percet = 100; //分数或者百分比
NumAutoPlusAnimation("time", { 
    time: 1500, 
    num: percet, 
    regulator: 50 
}) 
</script> 
</body>
</html> 


参考原文 ·


以上就是关于“ js数字累加 · 递增动画 - 封装篇 ” 的全部内容。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值