Dies ist eigentlich eine Möglichkeit, JS-Zufallszahlen zu üben. Schreiben Sie zunächst alle Namen in ein Array und lassen Sie dann die Werte im Array schnell im Bereich anzeigen Beim Scrollen werden keine zufälligen Effekte mehr erzielt.
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>JS写的随机点名 - 琼台博客</title> <script type="text/javascript"> var isRun=true; var a = ["张三","李四","王五","赵六"]; var a2 = new Array(); function action(str){ var s = document.getElementById("bt").value; if(s=="开始"){ isRun=true; run(); document.getElementById("bt").value="结束"; }else{ isRun=false; document.getElementById("bt").value="开始"; } } function run(){ var i = Math.floor(Math.random() * a.length+ 1)-1; document.getElementById("show").innerHTML=a[i]; if(isRun==false){ var b =true; for(var j in a2){ if(a2[j]==i){ b=false; } } if(b){ a2[a2.length]=i; return; } } setTimeout("run()",10); } </script> </head> <body> <div style="text-align:center; margin-top:100px;width:100%;"> <div id="show" style="margin:auto;font-size:50px;width:100px;height:50px; background:#FFEEFF"></div> <div style="margin-top:20px;"> <input id="bt" type="button" onclick="action()" value="开始"/> </div> </div> </body> </html>