jQuery实现简易数字摇奖程序
2014-03-25 15:41
155 查看
实现思路:首先用random生成一个四位的随机数,转换为字符串并分割返回成数组。利用each()遍历每一个.num的元素,设置其backgroundPositionY来实现滚动的效果。
使用到jQuery Easing plugin:http://gsgd.co.uk/sandbox/jquery/easing/
相关代码
HTML
CSS
JS
效果:
源代码:
http://download.csdn.net/detail/monarch_lin/7096489
使用到jQuery Easing plugin:http://gsgd.co.uk/sandbox/jquery/easing/
相关代码
HTML
<head> <script type="text/javascript" src="js/jquery-1.11.0.js"></script> <script type="text/javascript" src="js/easing.js"></script> </head> <div class="res"></div> <div class="num_box"> <div class="num"></div> <div class="num"></div> <div class="num"></div> <div class="num"></div> <div class="btn">开始摇奖</div> </div>
CSS
html,body{margin: 0;padding: 0;overflow: hidden;} body{ background: #eee;} .res{text-align: center;margin-top: 100px;} .num_box{height:450px; width:750px;position:absolute;left:50%;top:140px;margin-left:-370px;z-index:8;overflow:hidden;text-align:center;} .num_box .num{background:url(images/num.png) top center repeat-y #ccc;width:181px;height:265px;float:left;margin-right:6px;} .num_box .btn{background-color:#89ec6a;width:264px;height:68;position:absolute;left:50%;top:300px;margin-left:-132px;cursor:pointer;clear:both; line-height: 60px;border-radius: 10px;}
JS
/*获得随机数*/ function getRanNum(){ var x=9999; //最大上限 var y=1111;//下限 var ranNum = parseInt(Math.random()*(x-y)+y); return ranNum; } var isBegin=false; //用于判断是否正在执行 $(function(){ var imgH=265; //每张数字图片高度 $('.btn').click(function(){ if(isBegin){return false;} //正在执行摇奖时,防止再次点击按键执行 isBegin=true; var ranNum=getRanNum(); $('.res').html('摇奖结果:'+ranNum); $('.num').css('backgroundPositionY',0); var numArr=(ranNum+'').split(''); //获取随机数转换为字符串并分割返回为数组 $('.num').each(function(index){ var ele=$(this); //当前元素jquery对象 setTimeout(function(){ //延迟执行 ele.animate({'backgroundPositionY':(imgH*50)-(imgH*numArr[index]) },{ duration: 6000+index*3000, easing: "easeInOutCirc", complete: function(){ if(index==3) isBegin = false; } }); },300*index); });//end each() }); });
效果:
源代码:
http://download.csdn.net/detail/monarch_lin/7096489
相关文章推荐
- Struts2实现的6位数字的验证码程序
- 利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
- c语言实现的简易窗口程序
- PHP+Mysql+jQuery实现发布微博程序--jQuery篇
- 谁能用jQuery和Ajax做的访问ado.net程序-----跪求各位大侠(有相似的也可以,只要实现的是类似的功能就可以)
- 用c语言实现 编写程序数一下1到100的所有整数中出现多少次数字9
- [C#]使用 C# 代码实现拓扑排序 dotNet Core WEB程序使用 Nginx反向代理 C#里面获得应用程序的当前路径 关于Nginx设置端口号,在Asp.net 获取不到的,解决办法 .Net程序员 初学Ubuntu ,配置Nignix 夜深了,写了个JQuery的省市区三级级联效果
- JQuery实现分页程序代码,源码下载
- jquery实现鼠标拖拽滑动效果来选择数字的方法
- 通过程序统计字符串的大写字母个数、小写字母个数、数字个数和其它字符个数。用函数func实现功能
- 世界编程大赛第一名写的程序C 实现黑客帝国数字雨
- Jquery实现只能输入数字的文本框
- js框架jquery实现灯光圆盘抽奖程序活动特效
- PHP+Mysql+jQuery实现发布微博程序--jQuery篇
- 简易文件夹打包程序的设计与实现
- PHP+Mysql+jQuery实现发布微博程序--PHP篇
- jQuery实现了一个拖拽小东西的程序
- 【原创】MDI窗体程序中防止子窗体被多次实例化——Singleton(单例模式)的C#简易实现
- Loner_li 机试题 将数字 例如"12345.7895”,用程序实现显示"壹万贰仟叁佰肆拾伍圆柒角玖分"的方式
- 使用UISegementControl实现简易汤姆猫程序