【实践】分享一个年会抽奖程序

为了确保年会抽奖的安全性,本文档介绍了一个自编的抽奖程序,无需用户信息采集,适合公司、单位等各种年会活动。程序提供动态刷新的员工号码显示和物品选择功能,具有可配置的参与者名单和奖品设置,同时支持跨平台运行。源代码开放,用户可自由定制界面和逻辑。
摘要由CSDN通过智能技术生成

1.背景

        由于大部分网上的抽奖程序,可能会采集用户的信息,所以基于安全性而言,还是自己写一个吧。

公司,单位,学校,班级,等集体年会抽奖程序必备。快来下载啦~

可怜尊重原创,需要1积分偷笑:http://download.csdn.net/detail/supermarss/8426547

最重要的是,不用安装,跨平台再见(毫无节操)

2.程序界面

主界面(很久没写前端了,不喜欢这个样式自己可以修改~):

左边是一个动态刷新层,员工号会快速的刷新,主持可在此处选取的幸运参与人。(参与一次后,删除该员工,下次不再出现)

右边是4X4宫格,有16个目标图,幸运员工自己主动选取后,会随机抽取一个物品。(选取一次,对应的物品会减1)

抽奖程序的基本思路如下: 1. 定义一个数组,里面存储所有参加抽奖的人的姓名。 2. 点击“开始抽奖”按钮后,随机生成一个数组下标,即获奖者的索引。 3. 将获奖者的姓名显示在页面上。 下面是一个简单的示例代码: HTML: ``` <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>年会抽奖</title> </head> <body> <h1>年会抽奖</h1> <p>参加抽奖的人员名单:</p> <ul id="name-list"> <li>小明</li> <li>张三</li> <li>李四</li> <li>王五</li> <li>赵六</li> </ul> <button id="start-btn">开始抽奖</button> <p id="result"></p> <script src="app.js"></script> </body> </html> ``` JS: ``` // 获取参加抽奖的人员名单 var names = document.querySelectorAll('#name-list li'); // 定义一个函数,用于生成随机数 function getRandomIndex(max) { return Math.floor(Math.random() * Math.floor(max)); } // 获取开始抽奖按钮和结果显示区域 var startBtn = document.querySelector('#start-btn'); var result = document.querySelector('#result'); // 点击开始抽奖按钮后,随机生成一个获奖者的索引,并将其姓名显示在页面上 startBtn.addEventListener('click', function() { // 生成随机数 var randomIndex = getRandomIndex(names.length); // 获取获奖者的姓名 var winnerName = names[randomIndex].textContent; // 将获奖者的姓名显示在页面上 result.textContent = '恭喜' + winnerName + '获得大奖!'; }); ``` 在这个示例中,我们使用了 `querySelectorAll` 方法获取了所有参加抽奖的人员名单,并将其存储在 `names` 变量中。然后,我们定义了一个 `getRandomIndex` 函数,用于生成随机数。该函数接受一个参数 `max`,表示随机数的最大值。我们使用 `Math.random()` 方法生成一个介于 0 和 1 之间的随机数,然后将其乘以 `max` 并取整,得到一个介于 0 和 `max-1` 之间的随机整数。接着,我们使用 `querySelector` 方法获取了开始抽奖按钮和结果显示区域,并为开始抽奖按钮添加了一个 `click` 事件监听器。当用户点击开始抽奖按钮时,我们调用 `getRandomIndex` 函数生成一个随机数,然后使用该随机数获取获奖者的姓名,并将其显示在结果显示区域中。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值