我们在工作中有时会用到数字递增的效果,比如倒计时,数字从1-10的变化。一个个数字打出来,数字少的时候还可以,那如果10000到20000呢?
数字递增变化可能会遇到无数的情况,这里总结了一些我能想到的大部分情况,供大家参考。
a.简单的整数递增:
比如我们需要在4秒内,做1-10的递增变化:
表达式为:
n = linear(time, 0, 4, 1, 10);
Math.floor(n);
表达式解析:
首先定义一个n
linear(time, 0, 4, 1, 10) 意思是,随着时间 0秒 到 4秒,做 1-10 的变化
Math.floor(n) 对 n 的数值取整,返回数值的整数
为什么要给数值取整?如果不取整,数字会输出含有小数点的数值
b.大数值递增
如果我们需要在4秒内,做10000-100000的递增变化:我们只要把上边的表达式改为:
n = linear(time, 0, 4, 10000, 100000);
Math.floor(n)
c.修改开始时间
如果我们需要在0-1秒数字不变,1-4秒做0-10的递增变化:
n = linear(time, 1, 4, 1, 10);
Math.floor(n);
d.加上其他文字
如果我们需要数字前加上文字,比如做某个尺寸1-100的递增:
n = linear(time, 0, 4, 1, 100);
"尺寸:" + Math.floor(n);
还可以在后边加上单位:
n = linear(time, 0, 4, 1, 100);
"尺寸:" + Math.floor(n) + "cm";
e.小数的递增
如果我们需要4秒内,做0.1-1的递增变化,表达式为:
n = linear(time, 0, 4, 0.1, 1);
n.toFixed(1);
表达式解析:
首先定义一个n
linear(time, 0, 4, 1, 10) 意思是,随着时间 0秒 到 4秒,做 1-10 的变化
n.toFixed(1) 对 n 的数值取小数点后1位,返回数值
n.toFixed(2); 保留小数点后 2位,数字可根据需要修改
f.修改进出点时间
如果根据进出点来做数字递增:图层开始到结束,1-10递增变化:
n = linear(time, inPoint, outPoint, 1, 10);
Math.floor(n);
表达式解析:
inPoint 图层开始点
outPoint 图层结束点
定义开始到结束,这样减图层的长度或者加长度,都不会影响1-10的递增变化
好了,以上就是本篇的全部内容了,希望对各位观众老爷有所帮助,如果有疑问,可以在评论区发表你的想法!
我们下期再见!