html实现随机点名器的示例代码


Posted in Javascript onApril 02, 2021

此点名器开始点名后需点击停止按钮完成点名,因为是精简版没有考虑自动停止需求。姓名数据以字符串形式储存,适合小范围点名使用,有大量需求可自己适当改进。

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>随机点名生成</title>

    <style>
        /* 页面css样式 */
        .wrapper {
            width: 800px;
            margin: 100px auto;
            border: 1px solid #ddd;
            text-align: center;
        }

        .box li {
            vertical-align: top;
            display: inline-block;
            width: 100px;
            height: 50px;
            border: 2px solid #ddd;
            border-radius: 15px;
            text-align: center;
            line-height: 50px;
            margin: 5px;
        }
        
        .wrapper button {
            border: none;
            width: 100px;
            height: 50px;
            border-radius: 10px;
            cursor: pointer;
            outline: none;
            margin-top: 20px;
            font-weight: bolder;
            color: #333;
            background-color: rgb(14, 146, 43);
        }

        .wrapper button {
            display: inline-block;
        }

        body {
            background-color: #eee;
        }
    </style>

</head>

<body>
    <div class="wrapper">
     <h1 align="center">随机点名系统</h2>
      //实时显示系统时间标签
        <h6 id="data" align="right"></h6>
        <ul class="box"></ul>
        <button class="start">开始</button>
        <button class="stop">停止</button>
    </div>
</body>

<script>
    //定义全局变量方便引用
    var boxUl = document.getElementsByClassName('box')[0];
    var start = document.getElementsByClassName('start')[0];
    var stop = document.getElementsByClassName('stop')[0]
    var oLi = document.getElementsByTagName('li');

    //数据准备
    var nameString = new String("张三,李四,王五,赵六,周七,田八,国九,归零,张3,李4,王5,赵6,周7,田8,国9,归0");
    var nameArr = nameString.split(",");

    //获取每个学生姓名添加到标签中,自动解析html标签
    var str = "";
    for (let i = 0; i < nameArr.length; i++) {
        str += "<li >" + nameArr[i] + "</li>"
    }
    boxUl.innerHTML = str;

    //添加开始按钮的点击事件
    var timer = null;
    start.onclick = function () {
        // 设置定时器
        timer = setInterval(function () {

            // 根据数组长度范围生成随机数
            var i = Math.floor(Math.random() * nameArr.length);
            // 先通过for循环清空所有style属性
            for (var j = 0; j < oLi.length; j++) {
                oLi[j].removeAttribute("style");
            }
            // 为随机选择的li颜色属性
            oLi[i].style.background = "red";
        }, 150);
    };
    // 点击停止
    stop.onclick = function () {
        // 清空定时器停止点名
        clearInterval(timer);
    }
    //页面初始化时间设置
    window.onload = function () {
        datatime();
    }
    //页面时间动态刷新
    setInterval(datatime, 1000);

    function datatime() {
        let data = new Date();
        let dataString ="现在是北京时间:" + data.toLocaleString();
        document.getElementById("data").innerHTML = dataString;
    }
</script>

附一张效果图

html实现随机点名器的示例代码

到此这篇关于html实现随机点名器的示例代码的文章就介绍到这了,更多相关html随机点名器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
Javascript 相关文章推荐
Prototype使用指南之selector.js
Jan 10 Javascript
JavaScript获取flash对象与网上的有所不同
Apr 21 Javascript
jquery实现适用于门户站的导航下拉菜单效果代码
Aug 24 Javascript
js字符限制(字符截取) 一个中文汉字算两个字符
Sep 12 Javascript
推荐VSCode 上特别好用的 Vue 插件之vetur
Sep 14 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
Sep 25 Javascript
JavaScript实现短信倒计时60s
Oct 09 Javascript
JS 使用 window对象的print方法实现分页打印功能
May 16 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
Aug 12 Javascript
webpack打包非模块化js的方法
Oct 24 Javascript
d3绘制基本的柱形图的实现代码
Dec 12 Javascript
Javascript数组及类数组相关原理详解
Oct 29 Javascript
如何利用JavaScript实现二叉搜索树
(开源)微信小程序+mqtt,esp8266温湿度读取
Javascript中的解构赋值语法详解
Apr 02 #Javascript
Ajax实现局部刷新的方法实例
前端学习——JavaScript原生实现购物车案例
JavaScript中关于预编译、作用域链和闭包的理解
JavaScript 去重和重复次数统计
Mar 31 #Javascript
You might like
php 字符串函数收集
2010/03/29 PHP
thinkPHP中钩子的两种配置调用方法详解
2016/11/11 PHP
PHP实现的简单sha1加密功能示例
2017/08/27 PHP
JS Excel读取和写入操作(模板操作)实现代码
2010/04/11 Javascript
如何制作浮动广告 JavaScript制作浮动广告代码
2012/12/30 Javascript
DOM基础教程之使用DOM控制表格
2015/01/20 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
2015/08/11 Javascript
javascript实现密码验证
2015/11/10 Javascript
jquery ui dialog替代confirm实例分析
2016/01/25 Javascript
Jquery遍历select option和添加移除option的实现方法
2016/08/26 Javascript
Angular的MVC和作用域
2016/12/26 Javascript
详解AngularJs HTTP响应拦截器实现登陆、权限校验
2017/04/11 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
在axios中使用params传参的时候传入数组的方法
2018/09/25 Javascript
JS实现换肤功能的方法实例详解
2019/01/30 Javascript
vue用elementui写form表单时,在label里添加空格操作
2020/08/13 Javascript
Vue+penlayers实现多边形绘制及展示
2020/12/24 Vue.js
解析Python中的二进制位运算符
2015/05/13 Python
python中lambda()的用法
2017/11/16 Python
pycharm无法导入本地模块的解决方式
2020/02/12 Python
python读取xml文件方法解析
2020/08/04 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
如何在 Matplotlib 中更改绘图背景的实现
2020/11/26 Python
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
大学生求职工作的自我评价
2014/02/13 职场文书
公立医院改革实施方案
2014/03/14 职场文书
学校综治宣传月活动总结
2014/07/02 职场文书
对外汉语专业大学生职业生涯规划书
2014/10/11 职场文书
中秋客户感谢信
2015/01/22 职场文书
军训个人总结
2015/03/03 职场文书
Python深度学习之Pytorch初步使用
2021/05/20 Python
小程序与后端Java接口交互实现HelloWorld入门
2021/07/09 Java/Android
【2·13】一图读懂中国无线电发展
2022/02/18 无线电
redis 解决库存并发问题实现数量控制
2022/04/08 Redis
Win11查看设备管理器
2022/04/19 数码科技