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 相关文章推荐
添加到收藏夹代码(兼容几乎所有的浏览器)
Jan 09 Javascript
js操作select控件的几种方法
Jun 02 Javascript
基于JQuery的抓取博客园首页RSS的代码
Dec 01 Javascript
javascript实现的一个带下拉框功能的文本框
May 08 Javascript
JavaScript实现简单图片翻转的方法
Apr 17 Javascript
javascript实现起伏的水波背景效果
May 16 Javascript
jQuery中的each()详细介绍(推荐)
May 25 Javascript
jQuery解析XML 详解及方法总结
Sep 28 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
Nov 10 Javascript
移动端如何用下拉刷新的方式实现上拉加载
Dec 10 Javascript
Vue实现导航栏的显示开关控制
Nov 01 Javascript
JS如何实现手机端输入验证码效果
May 13 Javascript
如何利用JavaScript实现二叉搜索树
(开源)微信小程序+mqtt,esp8266温湿度读取
Javascript中的解构赋值语法详解
Apr 02 #Javascript
Ajax实现局部刷新的方法实例
前端学习——JavaScript原生实现购物车案例
JavaScript中关于预编译、作用域链和闭包的理解
JavaScript 去重和重复次数统计
Mar 31 #Javascript
You might like
PHP strncasecmp字符串比较的小技巧
2011/01/04 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
2011/08/09 PHP
CodeIgniter使用phpcms模板引擎
2013/11/12 PHP
php中的观察者模式简单实例
2015/01/20 PHP
PHP创建单例后台进程的方法示例
2017/05/23 PHP
在新窗口打开超链接的方法小结
2013/04/14 Javascript
nodejs之请求路由概述
2014/07/05 NodeJs
node.js中使用socket.io的方法
2014/12/15 Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
2020/06/23 Javascript
jQuery UI库中dialog对话框功能使用全解析
2016/04/23 Javascript
javascript特效实现——当前时间和倒计时效果的简单实例
2016/07/20 Javascript
ES6所改良的javascript“缺陷”问题
2016/08/23 Javascript
angular+bootstrap的双向数据绑定实例
2017/03/03 Javascript
微信小程序 自定义消息提示框
2017/08/06 Javascript
深入理解vue.js中$watch的oldvalue与newValue
2017/08/07 Javascript
[05:59]带你看看DPC的台前幕后
2021/03/11 DOTA
深入解析Python中的WSGI接口
2015/05/11 Python
使用Python保存网页上的图片或者保存页面为截图
2016/03/05 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
简单谈谈Python中的反转字符串问题
2016/10/24 Python
python实现的多线程端口扫描功能示例
2017/01/21 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
python找出因数与质因数的方法
2019/07/25 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
Python的in,is和id函数代码实例
2020/04/18 Python
Django如何实现密码错误报错提醒
2020/09/04 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
2020/11/02 Python
纽约著名的服装辅料来源:M&J Trimming
2017/07/26 全球购物
酷瑞网络科技面试题
2012/03/30 面试题
护理学应聘自荐书范文
2014/02/05 职场文书
大学生第一学年自我鉴定2015
2014/09/28 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
学雷锋团日活动总结
2015/05/06 职场文书
工程合作意向书范本
2015/05/09 职场文书
2015军训通讯稿大全
2015/07/18 职场文书
TS 类型收窄教程示例详解
2022/09/23 Javascript