js实现随机点名器精简版

 更新时间:2020年06月29日 08:41:41   作者:futurism_  
这篇文章主要为大家详细介绍了js实现随机点名器的精简版,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了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>

附一张效果图

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

相关文章

  • Openlayers显示瓦片网格信息的方法

    Openlayers显示瓦片网格信息的方法

    这篇文章主要为大家详细介绍了Openlayers显示瓦片网格信息,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • 关于ExtJS4.1:快捷键支持的问题

    关于ExtJS4.1:快捷键支持的问题

    本篇文章小编为大家介绍,关于ExtJS4.1 快捷键支持的问题。需要的朋友参考下
    2013-04-04
  • jQuery $.data()方法使用注意细节

    jQuery $.data()方法使用注意细节

    前段时间同事在群里对jQuery里的.data()方法大发牢骚,接下来介绍jQuery $.data()方法使用注意细节,需要了解的朋友可以参考下
    2012-12-12
  • js实现音频控制进度条功能

    js实现音频控制进度条功能

    本文主要介绍了js实现音频控制进度条功能的示例代码。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-04-04
  • 微信JSAPI Ticket接口签名详解

    微信JSAPI Ticket接口签名详解

    这篇文章主要为大家详细介绍了微信JSAPI Ticket接口签名,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • JS实现即点即编辑功能代码

    JS实现即点即编辑功能代码

    以前在网上都看到过类似的功能,不过没自己想要实现过,这次刚好做静态页面中有这样的一个需求,就试着自己做做看,做完发现也不是什么很难的事情。
    2008-10-10
  • js弹出对话框方式小结

    js弹出对话框方式小结

    这篇文章主要介绍了js弹出对话框方式,结合大量实例总结分析了JavaScript常用的弹出对话框的实现技巧与相关函数的具体使用方法,需要的朋友可以参考下
    2015-11-11
  • 基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用

    基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插

    本文给大家介绍基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用,介绍页面内容常用到的数据分页处理,以及Bootstrap插件JSTree的使用,非常具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-05-05
  • 深入了解JavaScript的逻辑运算符(与、或)

    深入了解JavaScript的逻辑运算符(与、或)

    本篇文章分享的是 JS 当中的逻辑运算符与、或,也就是 && 、 || ,没错,别看这简简单单的几个运算符,虽然这是最基础的知识,但其中隐藏的奥秘却十分耐人寻味,接下来本文就为大家一一揭开这简单的运算符背后的奇妙之处。
    2016-12-12
  • Google 静态地图API实现代码

    Google 静态地图API实现代码

    Google 静态地图 文档说的很详细,这里就不在啰嗦了!
    2010-11-11

最新评论