众力资讯网

有关华为这个乾坤智驾断网后还在滚动的问题,我看了眼代码。它的逻辑是这样:为了让页

有关华为这个乾坤智驾断网后还在滚动的问题,

我看了眼代码。

它的逻辑是这样:为了让页面好看不生硬,它使用了一个叫 runNum.worker.js JS 脚本控制页面上的数字滚动效果。为了好看,在一个固定的时间间隔内,当前数字(页面上显示的公里数),和目标数字(服务器上最新的公里数) 是通过动画滚动生成的。这样不会让数字像离散的状态一样从某个数直接跳到某个数,而是产生一个自然增长过去的结果。看起来好看。

const stepFactor = Math.log10(absDiff + 1) * 30

中间有这么个代码,它限制了数字滚动的步数,最小 50 步,最大 350 步,具体滚动数量,由 absDiff 差值决定。也就是差值越大,滚动步数越多。

而且这个滚动非线性滚动,而是变速滚动

if (progress