js随机点名点击停止
以下是一个简单的JavaScript程序,可以随机点名,并提供一个按钮来停止随机点名。
HTML代码:
<div id="students">
<ul>
<li>学生1</li>
<li>学生2</li>
<li>学生3</li>
<li>学生4</li>
<li>学生5</li>
<li>学生6</li>
<li>学生7</li>
<li>学生8</li>
<li>学生9</li>
<li>学生10</li>
</ul>
</div>
<button id="stopBtn" onclick="stopRandom()">停止</button>
JavaScript代码:
var studentsList = document.querySelectorAll("#students li"); // 获取所有学生列表项
var stopBtn = document.getElementById("stopBtn"); // 获取停止按钮
var intervalId; // 用于存储setInterval返回的ID
function getRandomStudent() {
var randomIndex = Math.floor(Math.random() * studentsList.length); // 生成一个随机数,用于选择学生列表项
var selectedStudent = studentsList[randomIndex]; // 选择随机的学生列表项
selectedStudent.classList.add("selected"); // 添加一个CSS类,标记被选中的学生
}
function stopRandom() {
clearInterval(intervalId); // 停止setInterval
for (var i = 0; i < studentsList.length; i++) {
studentsList[i].classList.remove("selected"); // 移除所有学生列表项的选中标记
}
}
stopBtn.disabled = true; // 初始时禁用停止按钮
setTimeout(function () {
stopBtn.disabled = false; // 等待1秒后启用停止按钮
intervalId = setInterval(getRandomStudent, 100); // 每100毫秒随机选一个学生
}, 1000);
CSS代码:
.selected {
background-color: yellow;
}
说明:
getRandomStudent函数用于生成一个随机数,选择一个学生列表项,并给它添加一个CSS类,以标记它被选中。stopRandom函数用于停止随机点名,并移除所有学生列表项的选中标记。- 初始时禁用停止按钮,等待1秒后启用它,并开始随机点名,每100毫秒选一个学生。
- CSS类
selected用于标记被选中的学生列表项,可以根据实际需要修改。
原文地址: http://www.cveoy.top/t/topic/4tn 著作权归作者所有。请勿转载和采集!