Jquery数字上下滚动动态切换插件
网络编程 2021-07-04 21:48www.168986.cn编程入门
有时我们需要动态的展示访问次数、下载次数等效果,我们可以借助jQuery结合后台php实现一个滚动的数字展示效果。
Jq打造的数字滚动插件,数字变化时,动态滚动切换,效果非常好。
我们先来看示例
CSS
.textC { position:absolute; width:500px; overflow:hidden; margin-: 100px; line-height:30px; margin-left: 300px; height:30px; } .textC span { color: #13BEEC; font-size: 28px; font-weight: bold; font-family: Geia, "Times New Roman", Times, serif; position: absolute; }
HTML
代码如下:
<div class="textC"></div>
<p style="text-align:center;"><a style="float:left; margin-left:300px; margin-:200px;" href="javascript:void(0);" onClick="NumbersAnimate.ChangeNumber(NumbersAnimate.RandomNum(10000000,19999999));">随机切换数字</a>
</p>
<p style="text-align:center;"><a style="float:left; margin-left:300px; margin-:200px;" href="javascript:void(0);" onClick="NumbersAnimate.ChangeNumber(NumbersAnimate.RandomNum(10000000,19999999));">随机切换数字</a>
</p>
JS
<script src="http://libs.baidu./jquery/2.0.0/jquery.min.js"></script> <script type="text/javascript"> $(function(){ NumbersAnimate.Target=$(".textC"); NumbersAnimate.Numbers=12389623; NumbersAnimate.Duration=1500; NumbersAnimate.Animate(); }); var NumbersAnimate={ Target:null, Numbers:0, Duration:500, Animate:function(){ var array=NumbersAnimate.Numbers.toString().split(""); //遍历数组 for(var i=0;i<array.length;i++){ var currentN=array[i]; //数字append进容器 var t=$("<span></span>"); $(t).append("<span class=\"childNumber\">"+array[i]+"</span>"); $(t).css("margin-left",18i+"px"); $(NumbersAnimate.Target).append(t); //生成滚动数字,根据当前数字大小来定 for(var j=0;j<=currentN;j++){ var tt; if(j==currentN){ tt=$("<span class=\"main\"><span>"+j+"</span></span>"); }else{ tt=$("<span class=\"childNumber\">"+j+"</span>"); } $(t).append(tt); $(tt).css("margin-",(j+1)25+"px"); } $(t).animate({marginTop:-((parseInt(currentN)+1)25)+"px"},NumbersAnimate.Duration,function(){ $(this).find(".childNumber").remove(); }); } }, ChangeNumber:function(numbers){ var oldArray=NumbersAnimate.Numbers.toString().split(""); var newArray=numbers.toString().split(""); for(var i=0;i<oldArray.length;i++){ var o=oldArray[i]; var n=newArray[i]; if(o!=n){ var c=$($(".main")[i]); var num=parseInt($(c).html()); var =parseInt($($(c).find("span")[0]).css("marginTop").replace('px', '')); for(var j=0;j<=n;j++){ var nn=$("<span>"+j+"</span>"); if(j==n){ nn=$("<span>"+j+"</span>"); }else{ nn=$("<span class=\"yy\">"+j+"</span>"); } $(c).append(nn); $(nn).css("margin-",(j+1)25++"px"); } var margin=parseInt($(c).css("marginTop").replace('px', '')); $(c).animate({marginTop:-((parseInt(n)+1)25)+margin+"px"},NumbersAnimate.Duration,function(){ $($(this).find("span")[0]).remove(); $(".yy").remove(); }); } } NumbersAnimate.Numbers=numbers; }, RandomNum:function(m,a){ var Range = a - m; var Rand = Math.random(); return(m + Math.round(Rand Range)); } } </script>
插件使用非常简单
1. 第一次调用时
NumbersAnimate.Target=$(".textC"); NumbersAnimate.Numbers=12389623; NumbersAnimate.Duration=1500; NumbersAnimate.Animate();
2. 如果数字改变了,调用就只需要调用Change函数即可
NumbersAnimate.ChangeNumber();
该插件有3个参数,分别是
Target数字的父级容器
Numbers显示的数字
Duration:滚动速度,单位是毫秒
使用注意当数字改变后调用Change方法时,需要保证改变后的数字和之前的数字位数一致。
上一篇:Jquery实现顶部弹出框特效
下一篇:Jquery实现弹性滑块滑动选择数值插件
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程