js實(shí)現(xiàn)隨機(jī)點(diǎn)名系統(tǒng)(實(shí)例講解)
廢話不多說,直接上代碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>隨機(jī)點(diǎn)名</title> <style type="text/css"> td{ text-align: center; } </style> </head> <body> <table width="760" border="1" height="460" align="center"> <h1 align="center">隨機(jī)點(diǎn)名系統(tǒng)</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="隨機(jī)抽取" 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 = ["周遠(yuǎn)康","劉婷婷","戴娜","范凱","向彬", "胡波","胡輝","黃緣平","劉云","劉嘉鑫", "趙福全","王小妹","蘇偉","李輝","曾偉", "李佳曉","鐘仕文","張志強(qiáng)","袁鑫豪","余日成", "付立金","彭???,"鄧慧佳","曹蓉","劉未東", "桂義","彭俊斌","周康華","曹增","蔣煜"]; //定義一個(gè)變量存隨機(jī)數(shù)組 var indexArr; //打亂順序 function Upsetorder(){ alert(1); //初始化數(shù)組 indexArr = []; //獲取新的隨機(jī)數(shù) var rd = parseInt(Math.random()*classMate.length); while(true){ do{ var falg = true; //循環(huán)獲得每一個(gè)下標(biāo) for (var i = 0 ; i <classMate.length ; i++) { //判斷是否已存在這個(gè)下標(biāo),是否為重復(fù)之后 跳出 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; } } } //隨機(jī)抽取 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實(shí)現(xiàn)隨機(jī)點(diǎn)名系統(tǒng)(實(shí)例講解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- javascript實(shí)現(xiàn)的一個(gè)隨機(jī)點(diǎn)名功能
- 使用javascript做的一個(gè)隨機(jī)點(diǎn)名程序
- JS實(shí)現(xiàn)課堂隨機(jī)點(diǎn)名和順序點(diǎn)名
- JS+CSS實(shí)現(xiàn)隨機(jī)點(diǎn)名(實(shí)例代碼)
- js實(shí)現(xiàn)隨機(jī)點(diǎn)名小功能
- JS實(shí)現(xiàn)隨機(jī)點(diǎn)名器
- JavaScript實(shí)現(xiàn)班級(jí)隨機(jī)點(diǎn)名小應(yīng)用需求的具體分析
- JavaScript實(shí)現(xiàn)隨機(jī)點(diǎn)名器
- JavaScript實(shí)現(xiàn)隨機(jī)點(diǎn)名器實(shí)例詳解
- JavaScript實(shí)現(xiàn)隨機(jī)點(diǎn)名網(wǎng)頁
相關(guān)文章
JS利用原生canvas實(shí)現(xiàn)圖形標(biāo)注功能
這篇文章主要為大家詳細(xì)介紹了JS如何利用原生canvas實(shí)現(xiàn)圖形標(biāo)注功能,支持矩形、多邊形、線段、圓形等已繪制的圖形進(jìn)行縮放,移動(dòng),需要的可以參考下2024-03-03javascript實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊頁面 移動(dòng)DIV
本篇文章主要介紹javascript實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊頁面,移動(dòng)DIV。話不多說,附上代碼實(shí)例。需要的朋友來看下吧2016-12-12總結(jié)Javascript中數(shù)組各種去重的方法
相信大家都知道網(wǎng)上關(guān)于Javascript中數(shù)組去重的方法很多,這篇文章給大家總結(jié)Javascript中數(shù)組各種去重的方法,相信本文對大家學(xué)習(xí)和使用Javascript具有一定的參考借鑒價(jià)值,有需要的下面來一起看看。2016-10-10?javascript數(shù)組中的lastIndexOf方法
這篇文章主要介紹了?javascript數(shù)組中的lastIndexOf方法,該方法可返回一個(gè)指定的字符串值最后出現(xiàn)的位置,在一個(gè)字符串中的指定位置從后向前搜索,下文詳細(xì)內(nèi)容需要的小伙伴可以參考一下2022-03-03vue(javaScript)操作字符串的一些常用方法總結(jié)
在平時(shí)前端開發(fā)中,我們不難發(fā)現(xiàn)經(jīng)常會(huì)用到字符串操作,這篇文章主要給大家介紹了關(guān)于vue(javaScript)操作字符串的一些常用方法的相關(guān)資料,需要的朋友可以參考下2024-01-01小程序的基本使用知識(shí)點(diǎn)(非常全面,推薦?。?/a>
開發(fā)一個(gè)小程序在如今來講是較為簡單的,但其實(shí)還是有很多的知識(shí)點(diǎn)需要大家記住,這篇文章主要給大家介紹了關(guān)于微信小程序基本使用的相關(guān)資料,需要的朋友可以參考下2021-06-06uni-app多環(huán)境配置實(shí)現(xiàn)自動(dòng)部署的方式詳解
前后端分離開發(fā)模式中,無論前后端都有可能區(qū)分不同的環(huán)境配置,下面這篇文章主要給大家介紹了關(guān)于uni-app多環(huán)境配置實(shí)現(xiàn)自動(dòng)部署的相關(guān)資料,需要的朋友可以參考下2022-06-06