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 相关文章推荐
IE浏览器下PNG相关功能
Jul 05 Javascript
为什么JavaScript没有块级作用域
May 22 Javascript
前端js实现文件的断点续传 后端PHP文件接收
Oct 14 Javascript
JS实现点击网页判断是否安装app并打开否则跳转app store
Nov 18 Javascript
微信小程序实战之上拉(分页加载)效果(2)
Apr 17 Javascript
jQuery实现的事件绑定功能基本示例
Oct 11 jQuery
详解Node.js中path模块的resolve()和join()方法的区别
Oct 29 Javascript
js实现GIF动图分解成多帧图片上传
Oct 24 Javascript
javascript实现留言板功能
Feb 08 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 Javascript
vue2和vue3的v-if与v-for优先级对比学习
Oct 10 Javascript
Antd的Table组件嵌套Table以及选择框联动操作
Oct 24 Javascript
如何利用JavaScript实现二叉搜索树
(开源)微信小程序+mqtt,esp8266温湿度读取
Javascript中的解构赋值语法详解
Apr 02 #Javascript
Ajax实现局部刷新的方法实例
前端学习——JavaScript原生实现购物车案例
JavaScript中关于预编译、作用域链和闭包的理解
JavaScript 去重和重复次数统计
Mar 31 #Javascript
You might like
php根据生日计算年龄的方法
2015/07/13 PHP
php 猴子摘桃的算法
2017/06/20 PHP
几个高效,简洁的字符处理函数
2007/04/12 Javascript
javascript 限制输入脚本大全
2009/11/03 Javascript
在js中判断checkboxlist(.net控件客户端id)是否有选中
2013/04/11 Javascript
jquery 无限级下拉菜单的简单实现代码
2014/02/21 Javascript
JS实现在页面随时自定义背景颜色的方法
2015/02/27 Javascript
JavaScript判断是否为数组的3种方法及效率比较
2015/04/01 Javascript
js实现延迟加载的方法
2015/06/24 Javascript
BootStrap的Datepicker控件使用心得分享
2016/05/25 Javascript
关于js原型的面试题讲解
2016/09/25 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
jquery实现企业定位式导航效果
2018/01/01 jQuery
在vue项目中,使用axios跨域处理
2018/03/07 Javascript
JavaScript 作用域实例分析
2019/10/02 Javascript
ES6实现图片切换特效代码
2020/01/14 Javascript
vue中实现动态生成二维码的方法
2020/02/21 Javascript
jquery html添加元素/删除元素操作实例详解
2020/05/20 jQuery
Vue+Spring Boot简单用户登录(附Demo)
2020/11/12 Javascript
Vue SPA 首屏优化方案
2021/02/26 Vue.js
python 域名分析工具实现代码
2009/07/15 Python
Python字符串和文件操作常用函数分析
2015/04/08 Python
用python写的一个wordpress的采集程序
2016/02/27 Python
Python字符串和字典相关操作的实例详解
2017/09/23 Python
每天迁移MySQL历史数据到历史库Python脚本
2018/04/13 Python
python 计算一个字符串中所有数字的和实例
2019/06/11 Python
python 并发编程 非阻塞IO模型原理解析
2019/08/20 Python
python的range和linspace使用详解
2019/11/27 Python
django-crontab实现服务端的定时任务的示例代码
2020/02/17 Python
关于html字符串正则判断和匹配的具体使用
2019/12/12 HTML / CSS
用友笔试题目
2016/10/25 面试题
中式结婚主持词
2014/03/14 职场文书
观看信仰心得体会
2014/09/04 职场文书
个人汇报材料范文
2014/12/30 职场文书
Meta增速拉垮,元宇宙难当重任
2022/04/29 数码科技
HTML页面点击按钮关闭页面的多种方式
2022/12/24 HTML / CSS