简单的抽奖

这篇博客介绍了如何利用layui插件创建一个简单的抽奖程序。主要涉及JavaScript代码,通过初始化设置,利用layui的动画效果和弹窗功能。抽奖过程中,根据九宫格的隐藏值判断中奖情况,并限制抽奖次数。在中奖后更新界面状态,防止重复抽奖。当达到最大抽奖次数时,会询问用户是否开启新的抽奖轮次。整个过程中,HTML结构、CSS样式和JavaScript交互紧密配合,确保抽奖体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里用到了layui的插件,使用了其中的动画效果和弹窗

一定要初始化

var layer;

var index;

var intcishu=0;  //为已抽次数

var intkaishicishu = 5;  //每轮最高抽奖次数

var boolsate = false;    //抽奖状态

var intin = @ViewBag.strValideCode;   //判断抽奖的一个随机值

其中Index为页面九宫格的隐藏值

在这里插入图片描述

其中大部分代码为JS

然后将九宫格的隐藏值,赋值给index,以便于判断,是否中奖

index
= othis[0].value;

因为该数据是数组,所以使用数字的方式获取,不然无法获取到值,如果不确定值为什么类型,建议先到页面输出一遍。

当我抽中大奖时(index=intin),就不可在本轮抽奖中继续抽奖,只能开启新一轮的抽奖

	if (anim === 'layui-anim-fadeout on') {

                        setTimeout(function () {

                           
			othis.removeClass(anim);

                            othis.addClass("red")

                        }, 500);

}

并且移除动画效果这个类,添加一个突出中奖的格子的类

在中奖后将boolsate的值改为true 就防止继续抽奖

在这里插入图片描述
在这里插入图片描述

当我抽奖次数到达了5次就会提示你没有抽奖次数了,然后询问用户是否开启新一轮的抽奖,开启后才能继续抽奖

每抽奖一次intcishu++;如果当intcishu等于intkaishicishu则没有抽奖次数了

在这里插入图片描述

如果当我抽奖次数大于5次时,就不会再弹窗提示框,所以为了防止这一个bug

加了一个条件,这样当我再次点击时,九宫格不会消失,而弹出提示框,让我重新开始新一轮的抽奖
在这里插入图片描述

当我每点击一次,页面的九宫格就会少一个,因为九个格子都是用的li

所以当我点击时,就删除一个li

在这里插入图片描述
在这里插入图片描述

当我鼠标移入格子时,鼠标会变成手状

并将有一个随机的伪类,比如放大,旋转,缩小

并且每一个询问,都要点击确定后才能开始下轮抽奖

Html:

固定的写法

  •                 <li class="one layui-anim" data-anim="layui-anim-fadeout on" value="1"><span>^_^</span></li>
    
                    <li class="two layui-anim" value="2" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="three layui-anim" value="3" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="four layui-anim" data-anim="layui-anim-fadeout on" value="4"><span>^_^</span></li>
    
                    <li class="five layui-anim" value="5" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="six layui-anim" value="6" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="seven layui-anim" value="7" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="eight layui-anim" value="8" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    
                    <li class="nine layui-anim" value="9" data-anim="layui-anim-fadeout on"><span>^_^</span></li>
    

这样简单的抽奖就完成了

纯html+JS完成的抽奖系统,友通数码港实力派团队开发。 QQ:1004023852 arc@archn.cn 1、号码抽取等级、数量自由定义 ini.htm 2、全屏幕显示1024X768像素,界面美观大方,适合于投影仪投射晚会晚宴豪华场所抽奖系统。 3、可自由选择键盘及鼠标双重操作方式。 4、只需要IE浏览器即可完成所有执行。 5、未到场人员可以双击数字单独重新抽取。 6、自由配置一次抽一组或者抽一个。 7、抽奖完成后可以选择保存结果以便日后统计分析。 V1.0 增加了键鼠屏蔽参数 ----------------------------------------------- V1.1 2010-12-28 增加了 是否可以重复抽取配置选项 ----------------------------------------------- V1.2 2011-01-05 增加了 每组是否逐个抽取配置选项 2011-01-05 对逐个抽取的号码显示做了美化 ----------------------------------------------- V1.2.1 2011-01-08 修复了window.obo = 1;时出现重复数字的错误,V1.1之前版本无此错误 ~感谢石路街道的领导提醒:) 2011-01-08 增加了可选滚动姓名的功能 配置 m_name=[]; 即可 2011-01-08 增加双击数字单独重抽时的提示选项“此号码在以后的环节是否还有机会抽到!” 2011-01-08 修改了结果显示部分的错位样式 2011-01-08 修复了组抽号码重复错误问题 ------------------------------------------------ V1.2.2 2011-01-14 兼容了火狐浏览器,但本人建议仍然用IE,要用火狐只有按F11手动全屏了 2011-01-14 部分键 F5、退格、Ctrl+R、Ctrl+N、Shift+F10、Alt+F4 被屏蔽,避免一些意外发生 2011-01-14 优化了一些繁琐的结构,效率有所提升! 2011-01-16 去掉了配置参数 r、r_name,奖项配置变为window.ini,使配合样式表更加灵活 ----------------------------------------------- 使用请看压缩包内说明,用过了别忘了给好评,欢迎光临苏州友通数码港!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值