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 相关文章推荐
取得一定长度的内容,处理中文
Dec 20 Javascript
JavaScript动态调整TextArea高度的代码
Dec 28 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
May 23 Javascript
javascript采用数组实现tab菜单切换效果
Dec 12 Javascript
js面向对象编程之如何实现方法重载
Jul 02 Javascript
javascript实现下雪效果【实例代码】
May 03 Javascript
又一款js时钟!transform实现时钟效果
Aug 15 Javascript
jQuery滑动到底部加载下一页数据的实例代码
May 22 jQuery
详解plotly.js 绘图库入门使用教程
Feb 23 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
Jun 19 Javascript
JS严格模式原理与用法实例分析
Apr 27 Javascript
vue+swiper实现左右滑动的测试题功能
Oct 30 Javascript
如何利用JavaScript实现二叉搜索树
(开源)微信小程序+mqtt,esp8266温湿度读取
Javascript中的解构赋值语法详解
Apr 02 #Javascript
Ajax实现局部刷新的方法实例
前端学习——JavaScript原生实现购物车案例
JavaScript中关于预编译、作用域链和闭包的理解
JavaScript 去重和重复次数统计
Mar 31 #Javascript
You might like
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
博士208HAF收音机实习报告
2021/03/02 无线电
使用php重新实现PHP脚本引擎内置函数
2007/03/06 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
Yii中Model(模型)的创建及使用方法
2015/12/28 PHP
用javascript实现分割提取页面所需内容
2007/05/09 Javascript
最简单的js图片切换效果实现代码
2011/09/24 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
jQuery中wrapAll()方法用法实例
2015/01/16 Javascript
AngularJS基础 ng-list 指令详解及示例代码
2016/08/02 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
基于Nodejs的Tcp封包和解包的理解
2018/09/19 NodeJs
JavaScript设计模式--简单工厂模式定义与应用案例详解
2020/05/23 Javascript
js校验开始时间和结束时间
2020/05/26 Javascript
Python抽象类的新写法
2015/06/18 Python
python 实现删除文件或文件夹实例详解
2016/12/04 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
浅谈python迭代器
2017/11/08 Python
详解如何使用Python编写vim插件
2017/11/28 Python
手把手教你python实现SVM算法
2017/12/27 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
Django框架用户注销功能实现方法分析
2019/05/28 Python
Jupyter Notebook 安装配置与使用详解
2021/01/06 Python
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
2013年入党人员的自我鉴定
2013/10/25 职场文书
怎样写好自荐信和推荐信
2013/12/26 职场文书
高考寄语大全
2014/04/08 职场文书
个人股份合作协议书
2014/10/24 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
小学家长意见怎么写
2015/06/03 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python
python接口测试返回数据为字典取值方式
2022/02/12 Python