前言

在很多数据统计类型网站的首页,经常会看到数据在动态的更新,而且会以动画的效果呈现。

今天这篇文章我们就来看看这个效果如何实现吧。

文中的代码已经放到github上了,感兴趣的同学可以自取。https://github.com/zhouxiongking/article-pages/blob/master/articles/dynamicNumberUpdate/dynamicNumberUpdate.html

JavaScript

实现效果

首先我们来看看这个功能的实现效果,如下图所示。

实现效果

实现思路

看到上面的效果后,我们一起来如何实现?最开始给定一个基数,我们设置的是123456789。

给基数做基本的处理,每隔三位设置一个逗号。

随机生成从0到10之间的一个数,加到基数上,然后通过定时器,每隔一秒处理一次。

动画效果通过transform属性设置,transform的值改变translateY,从0%到-100%,这样就可以得到向上滚动的效果。

实现代码-JavaScript

页面的是初始HTML代码很简单,就只有一个空的ul元素。

首先是代码每隔三位加上逗号的方法。

方法1

其次是随机生成一个区间内数值的方法。

区间内随机生成数值

然后是增加step的方法。

增加step

然后是更新页面显示数字的方法。

该方法会接收两个参数,一个表示旧的数字,一个表示新的数字。然后比较新旧数字的每一位,如果相同则不需要变化,如果不同则需要添加一个active类,这个active类就是动画效果。

更新方法

最后是设置定时器,每秒触发一次update方法。

设置定时器

实现代码-CSS

给ul设置一个类number,然后给li设置基本属性,因为要呈水平排列,需要将display设置成inline-block。

基本属性

每个数字在初始状态下都是在translateY(0)的位置,表示旧数字,当数字有变化时,会增加动画效果使translateY从0%变为-100%,表示新数字。

新旧数字属性

最后是实际的动画属性。

动画属性

至此,所有的代码都讲解完毕,在页面运行后就可以达到文字一开始的效果。

结束语

这个效果也不只是这一种实现方法,大家还能想到别的方法吗?

html数字动画效果,原生JavaScript代码实现数字更新的动画效果相关推荐

  1. mysql插入ㄖ_原生JavaScript代码100个实例

    1.原生JavaScript实现字符串长度截取 function cutstr(str, len) { var temp; var icount = 0; var patrn = /[^\x00-\x ...

  2. html实现图片加载动画效果,HTML5+javascript实现图片加载进度动画效果

    在网上找资料的时候,看到网上有图片加载进度的效果,手痒就自己也写了一个. 图片加载完后,隐藏loading效果. 想看加载效果,请ctrel+F5强制刷新或者清理缓存. 效果预览: 0% 代码如下: ...

  3. 加入收藏代码_100个原生JavaScript代码片段知识点详细汇总【实践】

    作者:小棋子js 转发链接:https://www.jianshu.com/p/b5171efa340f JavaScript 是目前最流行的编程语言之一,正如大多数人所说:"如果你想学一门 ...

  4. html鼠标平滑滚动效果,JS特效代码 JS动态平滑滚动菜单效果

    JS特效代码 JS动态平滑滚动菜单效果 www.css5.net body {cursor:crosshair; background:#111; margin:0; padding:0; posit ...

  5. 原生javascript实现图片左右平滑轮播效果(思路分析+代码)

    效果截图: 思路:  1 准备工作 1 通过html和css实现图片水平布局(可以在main里面设置overflow=scrollleft,更好的观察图片移动的轨迹) 2 获取需要操作的对象 3 设置 ...

  6. 用原生JavaScript实现图片瀑布流的浏览效果

    学习JS,活跃思维,灵活运用的一个较为典型的学习案例.同一个瀑布流的效果但实现方式却很多,利用递归.冒泡等等手法都可以达到你想要的目的.这次要说的就是利用类似递归来实现此效果的原创方案.此方案个人认为 ...

  7. animate用法 js原生_用 原生Javascript 创建带动画的固顶导航菜单

    当我们在网页中加入一个导航菜单的时候,需要考虑很多因素.如何确定它的位置?如何定义样式?还需要保证它具有良好的响应性.又或者你想为它添加一些炫酷的动画.这时你可能会对 jQuery 感兴趣,因为它会帮 ...

  8. 原生javascript淡入淡出焦点图 + Jquery实现方法

    淡入淡出焦点图效果类 这里是缓动焦点图链接: JavaScript 缓动焦点图实现的几种写法 封装 + 函数式 + JQuery 焦点图 实现思路: 原生JS的类的调用方式: var slider1 ...

  9. 你可能不需要 jQuery!使用原生 JavaScript 进行开发

    很多的 JavaScript 开发人员,包括我在内,都很喜欢 jQuery.因为它的简单,因为它有很多丰富的插件可供使用,和其它优秀的工具一样,jQuery 让我们开发人员能够更轻松的开发网站和 We ...

最新文章

  1. Apache Falcon数据集管理和数据处理平台
  2. 超市账单管理系统设计思路
  3. mysql scws_php利用scws实现mysql全文搜索功能的方法,_PHP教程
  4. 5.12 QR分解的阻尼倒数法和正则化方法区别
  5. try-catch 异常处理的执行过程
  6. java css路径_java web开发中CSS路径有问题吗,运行jsp文件为什么找不到css文件?...
  7. Android页面跳转、延时跳转、跳转传值
  8. SpringBoot 中 get/post 请求处理方式,以及requestboy为Json时的处理
  9. Jmeter安装教程
  10. 【项目篇-软件项目技术方案怎么写?(五千字图文总结建议)】软件平台类创新创业竞赛项目计划书、新苗国创(大创)申报书
  11. html做成分页,静态html分页
  12. 什么是域名解析,A记录
  13. 百度地图如何去除 百度地图的logo
  14. shell脚本编写简易教程
  15. 【Rust 日报】2022-04-10 适用于Rust的异步CQL驱动
  16. 学术英语(理工)第二版unit5课文翻译
  17. matlab求x对应y值,matlab已知f(x,y)=0,已知一组x如何求对应的y值? - 计算模拟 - 小木虫 - 学术 科研 互动社区...
  18. opendrive网盘 一个能免费直接外链的网盘
  19. 最新ThinkPHP微信独立精彩互换抢红包系统源码开源版
  20. 计算机80坐标转换经纬度,西安80坐标系(高斯投影)转经纬度(示例代码)

热门文章

  1. 34所自划线院校研究生奖助学金一览!
  2. slxrom+v.21+原生android+4.2,小米MIX2S 魔趣OS 安卓9 MagiskV21版 完美ROOT 纯净完美 原生极简 纯净推荐...
  3. 股权和更高的薪资应该选那个呢?
  4. 在北京信息科技大学的发言
  5. HTML5音乐播放器的收获体会,音乐课的收获和心得【两篇】
  6. VBA模块, Word中有关定位选择后对选中的内容进行查找替换
  7. HY68 RGB DM蓝牙5.2双模热插拔PCB
  8. Multisim--软件相关使用技巧
  9. java.util.concurrent FutureTask
  10. 计算机协会见面会游戏,计算机协会新会员见面大会会长演讲稿