JavaScript實(shí)現(xiàn)隨機(jī)點(diǎn)名程序
本文實(shí)例為大家分享了js實(shí)現(xiàn)隨機(jī)點(diǎn)名程序的具體代碼,供大家參考,具體內(nèi)容如下
效果:
錄制的gif效果圖沒(méi)那么理想,其實(shí)速度是比這個(gè)快的
思路:
1.定義一個(gè)數(shù)組,存放名單
2.啟動(dòng)定時(shí)器,設(shè)定間隔時(shí)間不斷調(diào)用函數(shù)
3.Math.random()獲取隨機(jī)下標(biāo),根據(jù)下標(biāo)的隨機(jī)變換取出數(shù)組中對(duì)應(yīng)的元素
4.邏輯代碼完成后,通過(guò)DOM對(duì)象把變化的結(jié)果呈現(xiàn)在頁(yè)面上
JS代碼:
<script> var arr = ["唐僧", "孫悟空", "豬八戒", "沙悟凈", "白骨精", "玉皇大帝", "紅孩兒", "白骨精", "太上老君"] var myTimer = null //定時(shí)器編號(hào) // 既是啟動(dòng)定時(shí)器的函數(shù),也是停止定時(shí)器的函數(shù) function goAndStop(){ // 如果當(dāng)前沒(méi)有定時(shí)器在執(zhí)行,則啟動(dòng),否則,停止定時(shí)器; if(myTimer == null){ // 啟動(dòng)定時(shí)器,隨機(jī)下標(biāo),取出名字 myTimer = setInterval(function(){ // 1、隨機(jī)下標(biāo) var index = parseInt(Math.random()*arr.length) // 2、根據(jù)下標(biāo)取出學(xué)生的姓名,顯示在頁(yè)面上 document.getElementById("stuName").innerHTML = arr[index] },10); //啟動(dòng)定時(shí)器的同時(shí),改變按鈕狀態(tài),為下次單擊做準(zhǔn)備 document.getElementById("btn").value = "停 止" }else{ // 當(dāng)前若有有定時(shí)器在執(zhí)行,則停止定時(shí)器, 恢復(fù)初始狀態(tài) window.clearInterval(myTimer) myTimer = null document.getElementById("btn").value = "開(kāi) 始" } } </script>
HTML + CSS + JS 源碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> #box{ width:200px; height: 300px; margin: 100px auto; } #stuName{ width: 100%; height: 80px; border: 2px solid gray; line-height: 80px; text-align: center; font-size: 30px; color:orange; font-weight: bold; } input{ margin-top:30px; width: 100%; height: 50px; font-size: 20px; font-weight: bold; } </style> </head> <body> <div id="box"> <div id="stuName"> 隨機(jī)名單 </div> <input id="btn" type="button" value="開(kāi) 始" onclick="goAndStop()"> </div> </body> </html> <script> var arr = ["唐僧", "孫悟空", "豬八戒", "沙悟凈", "白骨精", "玉皇大帝", "紅孩兒", "白骨精", "太上老君"] var myTimer = null function goAndStop(){ if(myTimer == null){ myTimer = setInterval(function(){ var index = parseInt(Math.random()*arr.length) document.getElementById("stuName").innerHTML = arr[index] },10); document.getElementById("btn").value = "停 止" }else{ window.clearInterval(myTimer) myTimer = null document.getElementById("btn").value = "開(kāi) 始" } } </script>
這是我的一些思路,分享給大家!
如果你有更好的方法,歡迎下方留言相互交流!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 原生js實(shí)現(xiàn)隨機(jī)點(diǎn)名
- js實(shí)現(xiàn)隨機(jī)點(diǎn)名器精簡(jiǎn)版
- JS實(shí)現(xiàn)隨機(jī)點(diǎn)名器
- JavaScript實(shí)現(xiàn)隨機(jī)點(diǎn)名器
- js實(shí)現(xiàn)課堂隨機(jī)點(diǎn)名系統(tǒng)
- JavaScript實(shí)現(xiàn)簡(jiǎn)單隨機(jī)點(diǎn)名器
- js實(shí)現(xiàn)隨機(jī)點(diǎn)名程序
- 原生js實(shí)現(xiàn)隨機(jī)點(diǎn)名功能
- javascript網(wǎng)頁(yè)隨機(jī)點(diǎn)名實(shí)現(xiàn)過(guò)程解析
- javascript如何使用函數(shù)random來(lái)實(shí)現(xiàn)課堂隨機(jī)點(diǎn)名方法詳解
相關(guān)文章
layui之table checkbox初始化時(shí)選中對(duì)應(yīng)選項(xiàng)的方法
今天小編就為大家分享一篇layui之table checkbox初始化時(shí)選中對(duì)應(yīng)選項(xiàng)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09JavaScript實(shí)現(xiàn)定時(shí)隱藏與顯示圖片的方法
這篇文章主要介紹了JavaScript實(shí)現(xiàn)定時(shí)隱藏與顯示圖片的方法,可實(shí)現(xiàn)javascript定時(shí)關(guān)閉圖片的功能,涉及javascript針對(duì)頁(yè)面元素屬性定時(shí)操作的相關(guān)技巧,需要的朋友可以參考下2015-08-08document.getElementById方法在Firefox與IE中的區(qū)別
相信很多朋友在寫JavaScript的時(shí)候,對(duì)瀏覽器的兼容問(wèn)題會(huì)感到很頭疼。這不,煩什么,什么就來(lái)了,特記錄下來(lái),與大家分享。2010-05-05JS 有趣的eval優(yōu)化輸入驗(yàn)證實(shí)例代碼
這篇文章介紹了eval優(yōu)化輸入驗(yàn)證實(shí)例代碼,有需要的朋友可以參考一下2013-09-09二叉樹(shù)先序遍歷的非遞歸算法具體實(shí)現(xiàn)
這篇文章主要介紹了二叉樹(shù)先序遍歷的非遞歸算法,有需要的朋友可以參考一下2014-01-01js求數(shù)組中全部數(shù)字可拼接出的最大整數(shù)示例代碼
這篇文章主要給大家介紹了利用js如何求數(shù)組中全部數(shù)字可拼接出的最大整數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考借鑒,下面隨著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。2017-08-08web網(wǎng)頁(yè)按比例顯示圖片實(shí)現(xiàn)原理及js代碼
由于上傳圖片的大小是未知的,在顯示成縮略圖的時(shí)候必須進(jìn)行按比例的縮放才能美觀地顯示,本文將為大家簡(jiǎn)單的介紹一種比較不錯(cuò)的方法,有此需求的朋友可以參考下2013-08-08淺談JavaScript中的對(duì)象及Promise對(duì)象的實(shí)現(xiàn)
這篇文章主要介紹了淺談JavaScript中的對(duì)象及Promise對(duì)象的實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2015-11-11js keycode快捷鍵大全 并附有簡(jiǎn)單使用說(shuō)明
js keycode快捷鍵大全 并附有簡(jiǎn)單使用說(shuō)明,方便大家使用。2010-10-10