WebApp 九宫格抽奖简易demo
代码如下:
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0"
- <title></title>
- <script type="text/javascript" src="js/jquery-1.8.2.js" ></script>
- <script type="text/javascript">
- var roll={
- Msgs:["一等獎","二等獎","三等獎","四等獎","五等獎","六等獎","七等獎","八等獎"],
- index:0,//当前位置索引
- times:0,//次数
- roundTimes:0,//圈数
- timer:0,//循环器
- speed:300,//转动速度
- isActive:false,//游戏是否在运行
- Init:function(){
- ///初始化
- this.roundTimes=0;
- this.isActive=true;
- },
- Start:function(cls,callback){
- var that=this;
- if(that.isActive==true)
- {
- alert('游戏正在进行!');
- return;
- }
- if(that.times==4)
- {
- alert('只有四次机会');
- return;
- }
- that.Init();
- var interVal=setInterval(function(){
- if(that.index==8)
- {
- that.index=0;
- that.roundTimes++;
- }
- if(that.roundTimes==6)
- {
- that.index=parseInt(Math.random()*7) ;
- $('li[class^='+cls+']').removeClass('active');
- $('.'+cls+'-'+ that.index).addClass('active');
- that.isActive=false;
- clearInterval(that.timer);
- if(Object.prototype.toString.call(callback)=='[object Function]')
- {
- callback.call(this,that.index,that.Msgs[that.index]);
- }
- }
- else{
- $('li[class^='+cls+']').removeClass('active');
- $('.'+cls+'-'+ that.index).addClass('active');
- that.index++;
- }
- },100);
- that.timer=interVal;
- that.times++;
- }
- }
- $(function(){
- $('#btnChouj').click(function(){
- roll.Start('prize',function(index,msg){
- setTimeout(function(){
- alert(msg);
- })
- });
- });
- })
- </script>
- <style type="text/css">
- html,body{
- margin:0 auto;
- padding: 0;
- width: 100%;
- height: 100%;
- }
- #choujiangUL{
- list-style: none;
- position: absolute;
- width: 100%;
- height: 50%;
- }
- #choujiangUL li{
- float: left;
- width: 32%;
- /* height: 33.33%;*/
- text-align: center;
- border: 1px solid #CCCCCC
- /*background-color: deepskyblue;*/
- /*border: 1px solid white;*/
- }
- #choujiangUL li img{
- width: 100px;
- height: 100px;
- }
- .active{
- background-color: #990000;
- }
- </style>
- </head>
- <body>
- <ul id="choujiangUL">
- <li class="prize-0 active">
- <img src="img/choujiang/1.png" />
- </li>
- <li class="prize-1">
- <img src="img/choujiang/2.png" />
- </li>
- <li class="prize-2">
- <img src="img/choujiang/3.png" />
- </li>
- <li class="prize-7">
- <img src="img/choujiang/4.png" />
- </li>
- <li id="btnChouj" >
- <img src="img/choujiang/choujiang.png" />
- </li>
- <li class="prize-3">
- <img src="img/choujiang/5.png" />
- </li>
- <li class="prize-6">
- <img src="img/choujiang/6.png" />
- </li>
- <li class="prize-5">
- <img src="img/choujiang/7.png" />
- </li>
- <li class="prize-4">
- <img src="img/choujiang/8.png" />
- </li>
- </ul>
- </body>
- </html>
效果预览:
WebApp 九宫格抽奖简易demo的更多相关文章
- WebSocket基于javaweb+tomcat的简易demo程序
由于项目需要,前端向后台发起请求后,后台需要分成多个步骤进行相关操作,而且不能确定各步骤完成所需要的时间 倘若使用ajax重复访问后台以获取实时数据,显然不合适,无论是对客户端,还是服务端的资源很是浪 ...
- 同事问如何判断同花顺,我用javascript的二维数组写了个简易demo
有个前同事在群里问如何判断是否为同花顺我用javascript的二维数组写了个简易demo. <!DOCTYPE html> <html> <body> <s ...
- Js写九宫格抽奖
国庆出去转了一圈,回来及时把以前写的一些有用的在这儿记录一下 --------------------------------------------我是分割线-------------------- ...
- PHP+Ajax微信手机端九宫格抽奖实例
PHP+Ajax结合lottery.js制作的一款微信手机端九宫格抽奖实例,抽奖完成后有收货地址添加表单出现.支持可以设置中奖概率等. 奖品列表 <div class="lottery ...
- php+lottery.js制作九宫格抽奖实例
php+lottery.js制作九宫格抽奖实例,本抽奖功能效果表现好,定制方便简单,新手学习跟直接拿来用都非常不错,兼容IE.火狐.谷歌等浏览器. 引入抽奖插件lottery.js <scrip ...
- jq demo 九宫格抽奖
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- iOS学习之网易新闻简易Demo
简易NewsDemo代码分析 界面布局就不多说了.效果图:(自定义了三套Cell,最后一套Cell是页面最下方的"正在加载中..."Cell,图三.) 主要分析工程 ...
- 【javascript】九宫格抽奖组件设计
一些主要点 1. 转圈的顺序(顺时针或者逆时针): 2. 转圈的速率(从慢到快再到慢): 3. 位置的问题(下一次抽奖的起始位置是上一次抽奖的结束位置): 4. 转圈的圈数或者移动的次数. 基本原理 ...
- 微信小程序入门学习-- 简易Demo:计算器
简单学习下微信小程序 官网 简易教程 · 小程序 https://mp.weixin.qq.com/debug/wxadoc/dev/ 需要通过开发者工具,来完成小程序创建和代码编辑. 下载安装,运行 ...
随机推荐
- scikit-learn一般实例之八:多标签分类
本例模拟一个多标签文档分类问题.数据集基于下面的处理随机生成: 选取标签的数目:泊松(n~Poisson,n_labels) n次,选取类别C:多项式(c~Multinomial,theta) 选取文 ...
- alienware Win8 系统安装
原作者网名 alienware-小来: 我的外星人 老是装系统出错.我觉得写的不错.把原作者的东西拿过来.. 对于win7系统的用户来说想要体验下win8.1系统,或者是原来win8.1系统加装固态后 ...
- C# - 多线程 之 信号系统
基础概览 多线程之信号系统命名空间 using System.Threading; 线程同步类的继承层次关系图 终止状态和非终止状态 在终止状态下,被WaitOne()阻塞的线程会逐个得到释放.如果一 ...
- C#多线程--线程池(ThreadPool)
先引入一下线程池的概念: 百度百科:线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务.线程池线程都是后台线程.每个线程都使用默认的堆栈大小,以默认的优先级运行, ...
- expect基本使用方法
参考: http://www.cnblogs.com/lzrabbit/p/4298794.html expect是linux系统中可以和子进程进行交互的一个命令,使用它可以做一些自动化工作.pyth ...
- Mysql增加、删除和修改列属性和约束,和一些有用的查询语句
最近在整理关于MySql的东西,把一些需要记录的东西写下来,以便以后查询和浏览,以下是一些操作技巧.添加表字段alter table` 表名称` add transactor varchar(10) ...
- mybatis hibernate比较
开发速度: 如果一个项目中用到的复杂的查询基本没有,就是简单的增删该查,这样选择hibernate效率就很快了,因为基本的sql语句已经被封装好了,根本不用去写sql语句,但是对于一个大型项目,复杂语 ...
- 让产品有效迭代,前端A/B Testing的简单实现
A/B Testing简介 互联网产品的迭代速度很快,往往一周一小发布,一月一大发布,产品提出的种种需求,哪些改动是提升产品体验的,哪些是阻碍产品进步的,如果没有数据可以参考,仅仅是靠拍脑袋的话,对产 ...
- 深入理解DOM节点关系
× 目录 [1]父级属性 [2]子级属性 [3]同级属性[4]包含方法[5]关系方法 前面的话 DOM可以将任何HTML描绘成一个由多层节点构成的结构.节点分为12种不同类型,每种类型分别表示文档中不 ...
- Ionic设置ion-slide-box不启用(不通过$ionicSlideBoxDelegate)
猛地一看这个标题,可能觉得多此一举,直接$ionicSlideBoxDelegate. $getByHandle(handle). enableSlide(false)设置不就行了?是的,按理说就是这 ...