网页版简单点名系统的实现(HTML5、CSS、JS、jQuery)

网页版点名

实现的步骤:

1.搭建环境
2. 编写HTML和CSS代码把网页效果先写出来
3. 编写JS代码实现逻辑
4. 测试点名系统

搭建环境

创建一个HTML文件,导入JQuery文件,如下图:
在这里插入图片描述

编写css将想呈现的效果编辑出来:
<style type="text/css">
            body{
                background-color: rgba(255, 217, 0, 0.39);
            }
            .box {
                width: 100px;
                height: 50px;
                background-color: gray;
                text-align: center;
                line-height: 50px;
                margin: 10px;
                float: left;
            
            }
            #but{
                text-align: center; 
        
            }
            #fa{
                height: 300px;
            }
        
            .btn{
                width: 100px;
                height: 50px;
            }
        </style>
        <body>
        <h1 align="center">点名系统</h1>
        <div id="fa" align="center">
            
        </div>
    
        <div id="but" align="center">
            <button class="btn" οnclick="start()">开始</button>
            <button class="btn" οnclick="end()">结束</button>
        </div>
    </body>

我这里的效果是这样的:
在这里插入图片描述
自己可以根据喜好来改。

编写JS代码实现逻辑
  1. 在每个div标签中添加自己的名单,然后将标签添加到父标签中,我这里是使用的循环来实现:
var arr = ["肖绍霆","文鑫","向贞好","胥员员"]
var index = -1; 
var time;  //开始和结束的时钟变量
function init() {
                //将数组显示在页面上
                for(var i = 0; i < arr.length; i++) {
                    //获取父容器
                    var fa = document.getElementById("fa");
                    //创建小div
                    var div = document.createElement("div");
                    //设置id属性,方便寻找
                    div.id = "id" + i;
                    div.className = "box"; //方便给小div设置样式
                    //设置小div中显示的内容
                    div.innerHTML = arr[i];
                    //将小div放在父容器中
                    fa.appendChild(div);
                }
            }
  1. 编写开始和结束按钮的点击事件:

开始按钮的点击事件:

function start() {
                //调用计时器重复调用nowfind方法
                time = setInterval("nowfind()",100);//赋值给变量以便于关闭调用
            }

结束按钮的点击事件:

function end() {
                //停止随机获取姓名
                clearInterval(time);
                // alert("请"+arr[index]+"同学回答问题");
            }
  1. 随机点名逻辑代码的实现:
function nowfind() {
				
                if(index != -1) {
                    //将上一个选中的div的背景还原
                    document.getElementById("id" + index).style.backgroundColor = "gray";
                }
                //随机数
                var num = Math.floor(Math.random() * arr.length);
                index = num; //记录被选中的div的id
                //获取对应的div
                var div = document.getElementById("id" + num);
                //设置背景颜色
                div.style.backgroundColor = "pink";
            }
  1. 测试结果:

在这里插入图片描述
这是整个网页的代码:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script src="js/jquery-3.3.1.min.js"></script>
        <script type="text/javascript">
            //准备数据
            var arr = ["肖绍霆","文鑫","向贞好","胥员员","李勇","熊明","杜凯","熊国良","付帅","龚文曦","吴世林","李鹏","宋小明","黄海","曾光鹏","墙世川","幸勇","彭清亮","杨崇鑫","王一舟","汪家鹏","高茂鑫","张松恒","杨海峰","付杨恒","唐浩翔","张攀","王震","蒋朋利","邱东","杜林","杨玺","杜江","李维","颜森","陈毫","王伟","张炼","李璞","孙钰濠","管南昆"];
            var index = -1; 
            var time;
            function nowfind() {
				
                if(index != -1) {
                    //将上一个选中的div的背景还原
                    document.getElementById("id" + index).style.backgroundColor = "gray";
                }
                //随机数
                var num = Math.floor(Math.random() * arr.length);
                index = num; //记录被选中的div的id
                //获取对应的div
                var div = document.getElementById("id" + num);
                //设置背景颜色
                div.style.backgroundColor = "pink";
            }
 
            function start() {
                //调用计时器重复调用nowfind方法
                time = setInterval("nowfind()",100);//赋值给变量以便于关闭调用
            }
 
            function end() {
                //停止随机获取姓名
                clearInterval(time);
                // alert("请"+arr[index]+"同学回答问题");
            }
 
            function init() {
                //将数组显示在页面上
                for(var i = 0; i < arr.length; i++) {
                    //获取父容器
                    var fa = document.getElementById("fa");
                    //创建小div
                    var div = document.createElement("div");
                    //设置id属性,方便寻找
                    div.id = "id" + i;
                    div.className = "box"; //方便给小div设置样式
                    //设置小div中显示的内容
                    div.innerHTML = arr[i];
                    //将小div放在父容器中
                    fa.appendChild(div);
                }
            }
        
        $(function(){
            init();
        });
        </script>
        <style type="text/css">
            body{
                background-color: rgba(255, 217, 0, 0.39);
            }
            .box {
                width: 100px;
                height: 50px;
                background-color: gray;
                text-align: center;
                line-height: 50px;
                margin: 10px;
                float: left;
            
            }
            #but{
                text-align: center; 
        
            }
            #fa{
                height: 300px;
            }
        
            .btn{
                width: 100px;
                height: 50px;
            }
        </style>
    </head>
 
    <body>
        <h1 align="center">点名系统</h1>
        <div id="fa" align="center">
            
        </div>
    
        <div id="but" align="center">
            <button class="btn" onclick="start()">开始</button>
            <button class="btn" onclick="end()">结束</button>
        </div>
    </body>
 
</html>

以上就是本次介绍,如果有不恰当的地方,欢迎指正。

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我是一名语言模型,无法展示HTMLCSS的视觉效果。但是,我可以提供一些HTMLCSS代码示例,供您参考。 HTML代码: ``` <!DOCTYPE html> <html> <head> <title>随机学生点名系统</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <h1>随机学生点名系统</h1> <div id="container"> <button id="start-btn">开始点名</button> <div id="result"></div> </div> <script src="script.js"></script> </body> </html> ``` CSS代码: ``` body { font-family: Arial, sans-serif; background-color: #f2f2f2; } h1 { text-align: center; color: #333; margin-top: 50px; } #container { width: 500px; margin: 0 auto; margin-top: 50px; background-color: #fff; padding: 20px; border-radius: 5px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); } #start-btn { background-color: #4CAF50; color: #fff; border: none; padding: 10px 20px; font-size: 16px; cursor: pointer; border-radius: 5px; transition: background-color 0.3s ease; } #start-btn:hover { background-color: #3e8e41; } #result { text-align: center; font-size: 48px; color: #333; margin-top: 50px; display: none; } ``` JavaScript代码: ``` var students = [ "张三", "李四", "王五", "赵六", "钱七", "孙八", "周九", "吴十" ]; var startBtn = document.getElementById("start-btn"); var resultDiv = document.getElementById("result"); startBtn.addEventListener("click", function() { var randomIndex = Math.floor(Math.random() * students.length); var randomStudent = students[randomIndex]; resultDiv.innerHTML = randomStudent; resultDiv.style.display = "block"; }); ``` 这个示例实现了一个简单的随机学生点名系统,包括一个按钮和一个用于显示结果的DIV。点击按钮后,JavaScript代码会随机选择一个学生,并将其显示在DIV中。CSS样式使其看起来很好看。您可以根据自己的需要进行修改和定制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值