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 相关文章推荐
ExtJS 入门
Oct 29 Javascript
function foo的原型与prototype属性解惑
Nov 19 Javascript
jQuery学习笔记 操作jQuery对象 属性处理
Sep 19 Javascript
深入理解JavaScript系列(35):设计模式之迭代器模式详解
Mar 03 Javascript
js读取并解析JSON类型数据的方法
Nov 14 Javascript
node.js利用redis数据库缓存数据的方法
Mar 01 Javascript
JS实现简单的天数计算器完整实例
Apr 28 Javascript
JavaScript中一些特殊的字符运算
Aug 17 Javascript
Angular实现可删除并计算总金额的购物车功能示例
Dec 26 Javascript
antd-DatePicker组件获取时间值,及相关设置方式
Oct 27 Javascript
javascript实现随机抽奖功能
Dec 30 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
Jan 29 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
php版微信发红包接口用法示例
2016/09/23 PHP
JavaScript写的一个DIV 弹出网页对话框
2009/08/14 Javascript
从数组中随机取x条不重复数据的JS代码
2013/12/24 Javascript
JavaScript实现检查页面上的广告是否被AdBlock屏蔽了的方法
2014/11/03 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
瀑布流的实现方式(原生js+jquery+css3)
2020/06/28 Javascript
Angularjs 设置全局变量的方法总结
2016/10/20 Javascript
jQuery EasyUI中的日期控件DateBox修改方法
2016/11/09 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
2017/01/27 Javascript
Vue中的v-cloak使用解读
2017/03/27 Javascript
vue.js开发环境搭建教程
2017/05/04 Javascript
vue子组件使用自定义事件向父组件传递数据
2017/05/27 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
详解Vue2 SSR 缓存 Api 数据
2017/11/20 Javascript
Bootstrap 模态框自定义点击和关闭事件详解
2018/08/10 Javascript
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
Vue-cli3项目引入Typescript的实现方法
2019/10/18 Javascript
如何修改Vue打包后文件的接口地址配置的方法
2020/04/22 Javascript
Python实现FTP上传文件或文件夹实例(递归)
2017/01/16 Python
python实现基于SVM手写数字识别功能
2020/05/27 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
利用Python实现微信找房机器人实例教程
2019/03/10 Python
浅谈Python xlwings 读取Excel文件的正确姿势
2021/02/26 Python
戴尔马来西亚官网:Dell Malaysia
2020/05/02 全球购物
三项教育活动实施方案
2014/03/30 职场文书
企业授权委托书范本
2014/04/02 职场文书
2014年党员承诺书范文
2014/05/20 职场文书
新农村建设典型材料
2014/05/31 职场文书
优秀学生干部事迹材料
2014/12/24 职场文书
主持人开幕词
2015/01/29 职场文书
社区六一儿童节活动总结
2015/02/11 职场文书
驻村工作简报
2015/07/20 职场文书
谢师宴学生致辞
2015/07/27 职场文书
继续教育心得体会(共6篇)
2016/01/19 职场文书
高中生物教学反思
2016/02/20 职场文书