js实现随机点名器精简版


Posted in Javascript onJune 29, 2020

本文实例为大家分享了js实现随机点名器的具体代码,供大家参考,具体内容如下

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

<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>

附一张效果图

js实现随机点名器精简版

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js宝典学习笔记(上)
Jan 10 Javascript
映彩衣的js随笔(js图片切换效果)
Jul 31 Javascript
js限制文本框只能输入数字(正则表达式)
Jul 15 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
Aug 13 Javascript
纯javascript代码实现计算器功能(三种方法)
Sep 07 Javascript
jQuery实现的超简单点赞效果实例分析
Dec 31 Javascript
javascript设置文本框光标的方法实例小结
Nov 04 Javascript
js登录滑动验证的实现(不滑动无法登陆)
Jan 03 Javascript
vue draggable resizable gorkys与v-chart使用与总结
Sep 05 Javascript
vue简单封装axios插件和接口的统一管理操作示例
Feb 02 Javascript
JS代码优化的8点建议
Feb 04 Javascript
JavaScript对象访问器Getter及Setter原理解析
Dec 08 Javascript
Node.js中出现未捕获异常的处理方法
Jun 29 #Javascript
在Vue中使用antv的示例代码
Jun 29 #Javascript
vue实现一个6个输入框的验证码输入组件功能的实例代码
Jun 29 #Javascript
纯JS开发baguetteBox.js响应式画廊插件
Jun 28 #Javascript
JavaScript图片旋转效果实现方法详解
Jun 28 #Javascript
javascript+css实现俄罗斯方块小游戏
Jun 28 #Javascript
详解小程序横屏方案对比
Jun 28 #Javascript
You might like
虫族 Zerg 热键控制
2020/03/14 星际争霸
php google或baidu分页代码
2009/11/26 PHP
php一次性删除前台checkbox多选内容的方法
2013/09/22 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
基于PHP给大家讲解防刷票的一些技巧
2015/11/18 PHP
Smarty模板简单配置与使用方法示例
2016/05/23 PHP
ASP.NET MVC中EasyUI的datagrid跨域调用实现代码
2012/03/14 Javascript
JavaScript实现的日期控件具体代码
2013/11/18 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
js编写三级联动简单案例
2016/12/21 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
2017/01/11 Javascript
超全面的javascript中变量命名规则
2017/02/09 Javascript
Javascript中字符串相关常用的使用方法总结
2017/03/13 Javascript
JavaScript设计模式之代理模式简单实例教程
2018/07/03 Javascript
Vue 第三方字体图标引入 Font Awesome的方法
2018/09/28 Javascript
vue中引入第三方字体文件的方法示例
2018/12/17 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
使用React-Router实现前端路由鉴权的示例代码
2020/07/26 Javascript
javascript实现简易计算器功能
2020/09/23 Javascript
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
Python进阶之@property动态属性的实现
2019/04/01 Python
python3图片文件批量重命名处理
2019/10/31 Python
python 类之间的参数传递方式
2019/12/20 Python
python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例
2020/02/27 Python
Python使用进程Process模块管理资源
2020/03/05 Python
python入门教程之基本算术运算符
2020/11/13 Python
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
我能否用void** 指针作为参数, 使函数按引用接受一般指针
2013/02/16 面试题
大客户销售经理职责
2013/12/04 职场文书
《画家乡》教学反思
2014/04/22 职场文书
奥巴马获胜演讲稿
2014/05/15 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
竞选大学学委演讲稿
2014/09/13 职场文书
销售简历自我评价怎么写
2014/09/26 职场文书
分居协议书范本
2014/11/03 职场文书