本文介绍如何使用JavaScript结合HTML和CSS实现一个简单的网页抽奖系统。内容涵盖背景样式设置、界面布局以及核心抽奖逻辑,包括利用Math.random生成随机索引、从名单中移除已中奖者及动态更新页面显示。
JavaScript前端抽奖系统实现代码与样式详解
本文分享了使用JavaScript开发简易抽奖系统的具体代码示例,供读者参考学习。
模拟实现一个基础的抽奖功能系统。
前端部分采用JavaScript语言编写核心逻辑,具体实现代码如下所示:
页面样式定义部分:
<style>
body{
background: url("bg.jpg") no-repeat;
background-size: 100%;
}
#box{
position: absolute;
left: 50%;
top: 50%;
margin: -250px 0 0 -250px;
text-align: center;
line-height: 100px;
font-size: 40px;
width: 500px;
height: 300px;
background: rgba(255,255,255,0.5);
border-radius: 10px;
box-shadow: 8px 8px 15px rgba(0,0,0,0.5);
}
#start{
margin: 0;
height: 50px;
width: 120px;
font-size: 30px;
color: darkred;
opacity: 0.6;
box-shadow: 3px 3px 3px #f00;
}
#winner{
border-radius: 5px;
background: pink;
margin-left: 100px;
margin-right: 100px;
opacity: 0.5;
}
</style>系统主体逻辑代码:
<div id="box">
<p id="winner"> </p>
<button type="button" id="start">抽奖</button>
</div>
<script>
var names = ["杰克马","麻花藤","giao哥","药酱","锅子","鹌鹑","大司马"];
function extrust(){
var index = parseInt(Math.random()*names.length);
names.splice(index,1);//从参与人中删除中奖人
document.getElementById('winner').innerText = names[index];
}
let start = false;
var flag;//定时任务标记
document.getElementById("start").addEventListener('click',function () {
if(names.length == 0){
document.getElementById('winner').innerText ="抽奖结束";
return;
}
if(start) {
//清除指定标记的定时任务
clearInterval(flag);
extrust();
}else{
flag =setInterval(function () {
document.getElementById('winner').innerText = names[parseInt(Math.random()*names.length)];
},20)
}
//状态取反
start = !start;
})
</script>
</body>最终页面呈现效果如下:

以上内容为本文的全部分享,旨在为读者的学习提供辅助,欢迎继续关注本站获取更多资源。