用js语言写一个九宫格抽奖程序
时间: 2023-08-22 14:07:46 浏览: 133
好的,以下是一个简单的九宫格抽奖程序的JavaScript代码:
HTML代码:
```html
<div id="lottery">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
<div class="item">7</div>
<div class="item">8</div>
<div class="item">9</div>
</div>
<button id="start">开始抽奖</button>
```
CSS代码:
```css
#lottery {
display: flex;
flex-wrap: wrap;
width: 300px;
height: 300px;
border: 1px solid #ccc;
}
.item {
display: flex;
align-items: center;
justify-content: center;
width: 100px;
height: 100px;
font-size: 24px;
background-color: #fff;
border: 1px solid #ccc;
}
```
JavaScript代码:
```javascript
const items = document.querySelectorAll('.item');
const startButton = document.querySelector('#start');
let isStarted = false;
function getRandomNumber(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
function startLottery() {
if (isStarted) return;
isStarted = true;
let count = 0;
const interval = setInterval(() => {
items.forEach(item => item.classList.remove('active'));
const index = getRandomNumber(0, items.length - 1);
items[index].classList.add('active');
count++;
if (count >= 10) {
clearInterval(interval);
isStarted = false;
alert(`恭喜您抽中了${items[index].textContent}`);
}
}, 200);
}
startButton.addEventListener('click', startLottery);
```
代码分析:
1. 获取九宫格的每个格子和开始抽奖的按钮。
2. 定义一个函数 `getRandomNumber` 用于获取指定范围内的随机整数。
3. 定义一个函数 `startLottery` 用于开始抽奖,其中使用 `setInterval` 定时器来随机选中一个格子并添加 `active` 类名,并且当随机次数达到10次时,清除定时器,并弹出抽中的格子的数字。
4. 监听开始抽奖按钮的点击事件,调用 `startLottery` 函数开始抽奖。
以上就是一个简单的九宫格抽奖程序的JavaScript代码。
阅读全文