一个简单的转盘效果

主要代码:

  1 /**
  2  * Created by Administrator on 2016/7/25.
  3  */
  4 $(function(){
  5     var $start=$(".zhuanpan .start-zp");
  6     var $zp=$(".zhuanpan .zp-wp");
  7
  8     //初始话旋转次数变量;
  9     var count=1;
 10     //上限次数
 11     var limit=3;
 12
 13
 14     //各奖项的角度
 15     var eachDeg=[0,-50,-90,-130,-180,-220,-260,-310];
 16     //各奖项的描述
 17     var eachContent=["金币50个","金币100个","谢谢参与","再来一次","抵用券5元","抵用券10元","金币5个","金币10个"];
 18     //各奖项的概率区间
 19     var GL=[0.03,0.05,0.45,0.65,0.75,0.82,0.9,1];
 20
 21     //各奖项的回调函数
 22     function cb0(){
 23         alert("回调cb0");
 24     }
 25
 26     function cb1(){
 27         alert("回调cb1");
 28     }
 29
 30     function cb2(){
 31         alert("回调cb2");
 32     }
 33
 34     function cb3(){
 35         limit++;
 36         alert("回调cb3");
 37     }
 38
 39     function cb4(){
 40         alert("回调cb4");
 41     }
 42
 43     function cb5(){
 44         alert("回调cb5");
 45     }
 46
 47     function cb6(){
 48         alert("回调cb6");
 49     }
 50
 51     function cb7(){
 52         alert("回调cb7");
 53     }
 54
 55
 56     var cbArray=[cb0,cb1,cb2,cb3,cb4,cb5,cb6,cb7];
 57
 58     var clickFlag=false;
 59
 60     $start.click(function(){
 61         console.log(count+" "+limit);
 62         if(clickFlag==false){
 63             clickFlag=true;
 64             setTimeout(function(){
 65                 clickFlag=false;
 66             },4000);
 67             if(count<=limit){
 68                 //定义一个随机概率
 69                 var random=Math.random();
 70                 //声明数组的index
 71                 var index=0;
 72                 //根据概率得到index
 73                 for(var i=0; i<8;i++){
 74                     if(random>GL[i]&&random<=GL[i+1]){
 75                         index=i+1;
 76                     }
 77                 }
 78                 //触发旋转动画
 79                 $zp.children().css({"transform":"rotate("+(eachDeg[index]-1080*count)+"deg)"});
 80                 setTimeout(function(){
 81                     //弹出对话框
 82                     if(index==2){
 83                         alert("很遗憾,谢谢惠顾");
 84                     }else if(index==3){
 85                         alert("恭喜您,再来一次");
 86                     }else{
 87                         alert("恭喜您获得"+eachContent[index]);
 88                     }
 89                     //执行函数
 90                     cbArray[index]();
 91                 },4000);
 92
 93                 count++;
 94             }else{
 95                 alert("你的次数已用完");
 96                 clickFlag=false;
 97             }
 98         }
 99     });
100 })

演示地址

demo下载

时间: 2024-08-04 18:44:53

一个简单的转盘效果的相关文章

第一次来博客园先用jquery写一个简单菜单收缩效果

<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>    <meta charset="utf-8" />    <title></title>    <script src="jquery-1.7.2.min.js"></script&g

(转)Cocos2d-js中使用Shader方法--以一个简单的波纹效果为例:

以一个简单的波纹效果为例: 一.引入shader脚本文件. 1.vertex shader attribute vec4 a_position; attribute vec2 a_texCoord; attribute vec4 a_color; varying vec4 v_fragmentColor; varying vec2 v_texCoord; void main() { gl_Position = CC_PMatrix * a_position; v_fragmentColor =

用CSS写一个简单的幻灯片效果页面

这里是修真院前端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [用CSS写一个简单的幻灯片效果页面] 1.背景介绍CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation. transform属性向元素应用2D或3D转换.该属性允许我们对元素进行旋转.缩放.移动或倾斜. transition是令一个或多个可以用数值表示的css属性值

用CSS实现一个简单的幻灯片效果页面

用CSS实现一个简单的幻灯片效果页面,第一反应是利用CSS3的animation.不过为了兼容浏览器,记得加各浏览器前缀("chrome和safira:-webkit-"."firefox:-moz-"."opera:-o-"),我最开始写的时候忘记加浏览器前缀,在chrome中一直没有任何显示.下面说说用到的animation各属性.animation-name(动画名字,需用引号包裹)animation-duration(动画持续时间,如:2

IOS中一个简单的粒子效果实现

1.效果图展示 2.实现思路 1> 首先要实现上面的效果,第一步要处理的就是一个简单的画板,在View上面用鼠标滑动的时候画出线条,这个功能可使用UIBezierPath实现 2> 关于粒子效果的实现,可以创建一个CALayer,然后用CAReplicatorLayer进行复制layer,从而达到粒子效果 3.代码实现 DrawView类的封装与编写 // // DrawView.m // 06-粒子效果 // // Created by xiaomage on 15/6/24. // Cop

使用CSS实现一个简单的幻灯片效果

方法一: 简单的CSS代码实现幻灯片效果 方法二: 使用CSS3 Animation来制作幻灯片 方法一: 简单的CSS代码实现幻灯片效果 话不多说,直接上代码 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>CSS实现简单的幻灯片效果</title> <style type="te

一个简单hover动画效果

HTML: <div id="demo1" class="demo">demo1</div> <div id="demo2" class="demo">demo2</div> CSS: .demo { width: 100px; height: 100px; text-align: center; line-height: 100px; border: 10px solid #c

原生js实现一个简单轮播效果

代码简单,直接上: <!DOCTYPE html> <html> <head> <title>轮播</title> <meta charset="utf-8"> <style type="text/css"> *{ padding:0; margin:0; } .mainCss{ width:100px; height: 200px; position: relative; over

写了一个简单轮播效果实现

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> html,body{height:100%;} *{margin:0;padding:0;} .box{ width:100%; height:100%; text-align:center; }