欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js实现随机点名系统(实例讲解)

程序员文章站 2022-07-06 20:22:33
废话不多说,直接上代码:

废话不多说,直接上代码:

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>随机点名</title>
<style type="text/css">
td{
text-align: center;
}
</style>
</head>
<body>
<table width="760" border="1" height="460" align="center">
<h1 align="center">随机点名系统</h1>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<div align="center">
<br/>
<br/>
<input type="button" value="随机抽取" onclick="selectrandom();"/>
<input type="button" value="打乱顺序" onclick="upsetorder();"/>
<br/>
<br/>
<input type="button" value="快速抽取" onclick="quickextr();"/>
<input type="button" value="停止抽取" onclick="stopextr();"/>
</div>
<script type="text/javascript">
var classmate = ["周远康","刘婷婷","戴娜","范凯","向彬",
"胡波","胡辉","黄缘平","刘云","刘嘉鑫",
"赵福全","王小妹","苏伟","李辉","曾伟",
"李佳晓","钟仕文","张志强","袁鑫豪","余日成",
"付立金","彭福康","邓慧佳","曹蓉","刘未东",
"桂义","彭俊斌","周康华","曹增","蒋煜"];
//定义一个变量存随机数组
var indexarr;
//打乱顺序
function upsetorder(){
alert(1);
//初始化数组
indexarr = [];
//获取新的随机数
var rd = parseint(math.random()*classmate.length);
while(true){
do{
var falg = true;
//循环获得每一个下标
for (var i = 0 ; i <classmate.length ; i++) {
//判断是否已存在这个下标,是否为重复之后 跳出
if(indexarr[i] == rd){
falg = false;
break;
}
}
//判断是否添加
if(falg){
indexarr.push(rd);
}
rd = parseint(math.random()*classmate.length);
}while (falg);
if(indexarr.length == classmate.length){
break;
}
}
}
//随机抽取
function selectrandom(){
var alltd = document.getelementsbytagname("td");
for (var i = 0; i < classmate.length; i++) {
alltd[i].innerhtml = classmate[indexarr[i]];
alltd[i].style.color = "#ff6633";
alltd[i].style.background = "#ff6633";
alltd[i].onclick = function (){
this.style.background = "white";
}
}
}
//快速抽取
var interid;
var count = 0;
//保存已被选出的人
var mychecked = [];
var alltd = document.getelementsbytagname("td");
function quickextr(){
if(interid){
return;
}
//把所有的td还原为最初
interid = setinterval(function(){
for (var i = 0; i < classmate.length; i++) {
alltd[i].style.color = "#ff6633";
alltd[i].style.background = "#ff6633";
}
for (var i = 0; i < mychecked.length; i++) {
alltd[mychecked[i]].style.color = "#ff6633";
alltd[mychecked[i]].style.background = "white";
}
alltd[count%classmate.length].style.color = "white";
alltd[count%classmate.length].style.background = "white";
count++;
},1);
}
//停止抽取
function stopextr(){
clearinterval(interid);
interid = undefined;
var checkids = count%classmate.length==0?classmate.length-1:(count%classmate.length)-1;
alltd[checkids].style.color = "#ff6633";
mychecked.push(checkids);
}
</script>
</body>
</html>

以上这篇js实现随机点名系统(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。