基于JavaScript实现随机点名器


Posted in Javascript onFebruary 25, 2021

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

基于JavaScript实现随机点名器

HTML代码:

<body>
 <h1>点名啦</h1>
 <div id="did">
  <input id="rollcall-id" type="button" value="随机点名器"><br>
  <input id="action-id" type="submit" onclick="doClick()" value="开始">
 </div>
</body>

CSS代码:

<style>
 * {
  margin: 0px;
  padding: 0px;
 }

 body {
  background-color: rgb(255, 249, 249);
 }

 h1 {
  text-align: center;
  padding-top: 100px;
  color: rgba(250, 54, 129, 0.562);
 }

 #did {
  position: relative;
  width: 200px;
  margin: 60px auto;
 }

 #did input:first-child {
  width: 200px;
  height: 60px;
  background-color: rgba(250, 54, 129, 0.562);
  /* 不要边框或设边框为透明 */
  border: none;
  border-radius: 20px;
  font-size: 25px;
  color: #fff;
  box-shadow: 0px 0px 3px 3px rgba(250, 54, 129, 0.158);
  /* 点击时边框消失 */
  outline: 0;
 }

 #did input:nth-last-child(1) {
  width: 100px;
  height: 40px;
  margin: 40px 50px;
  background-color: rgba(250, 54, 129, 0.562);
  border: 1px solid transparent;
  background-color: rgba(255, 68, 177, 0.432);
  border-radius: 15px;
  box-shadow: 0px 0px 2px 2px rgba(250, 54, 129, 0.158);
  font-size: 17px;
  color: #333;
  outline: 0;
  transition: color 0.2s ease-out;
  transition: box-shadow 0.2s ease-out;
 }

 #did input:nth-last-child(1):hover {
  color: #fff;
  cursor: pointer;
  box-shadow: 0px 0px 4px 4px rgba(250, 54, 129, 0.158);
 }
</style>

JavaScript代码:

<script>
 var rollcall = document.getElementById("rollcall-id");
 var action = document.getElementById("action-id");
 var h1 = document.getElementsByTagName("h1");

 //不能用name,用name只会取得一个字符
 var allName = ["张柳菲", "高颖影", "赵温言", "李颖", "邓辰希", "莫若邻", "秦橙",
  "吴筱宇", "赵希", "马素滢", "吕沁雅", "罗鸿哲", "夏素芸", "谢焱之",
  "曹梦朦", "李允书", "周枫桥", "孙浩", "江雁菁", "杨振凯", "林舒言",
  "钱妙妙", "郭景", "杜贝贝", "童闵然", "钟小凌", "韩云韵", "白然之"];

 //随机产生一个名字
 function stringRandom() {
  return parseInt(Math.random() * allName.length);
 }

 var time = null;
 var luckName;
 //开始
 function doStart() {
  if (time == null) {
   time = setInterval(function () {
    //获取随机点名的值
    luckName = allName[stringRandom()];
    rollcall.setAttribute("value", luckName);
   }, 100);
  }
 }

 //停止
 function doStop() {
  if (time != null) {
   clearInterval(time);
   time = null;
  }
 }

 //点击事件
 function doClick() {
  if (action.value == "开始") {
   //改变样式
   action.style.backgroundColor = "#cecece";
   action.style.boxShadow = "0px 0px 2px 2px rgba(100, 100, 100, 0.4)";
   action.value = "停止";
   h1[0].innerHTML = "点名啦";

   //开始随机点名
   doStart();
  } else if (action.value == "停止") {
   action.style.backgroundColor = "rgba(255, 68, 177, 0.432)";
   action.style.boxShadow = "0px 0px 2px 2px rgba(250, 54, 129, 0.158)";
   action.value = "开始";
   h1[0].innerHTML = "恭喜" + luckName + "同学获得一次发言机会";

   //停止
   doStop();
  }
 }
</script>

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

Javascript 相关文章推荐
JavaScript进阶教程(第四课第一部分)
Apr 05 Javascript
基于JQuery的列表拖动排序实现代码
Oct 01 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
jQuery获取select选中的option的value值实现方法
Aug 29 Javascript
jQuery查找节点并获取节点属性的方法
Sep 09 Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
Nov 21 Javascript
学习使用bootstrap的modal和carousel
Dec 09 Javascript
详解vue-loader在项目中是如何配置的
Jun 04 Javascript
react.js组件实现拖拽复制和可排序的示例代码
Aug 20 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
Oct 30 Javascript
javascrpt密码强度校验函数详解
Mar 18 Javascript
JavaScript如何实现防止重复的网络请求的示例
Jan 28 Javascript
JavaScript仿京东轮播图效果
Feb 25 #Javascript
Vue基本指令实例图文讲解
Feb 25 #Vue.js
使用webpack和rollup打包组件库的方法
Feb 25 #Javascript
vue常用高阶函数及综合实例
Feb 25 #Vue.js
原生JS实现音乐播放器的示例代码
Feb 25 #Javascript
详解vite2.0配置学习(typescript版本)
Feb 25 #Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 #Vue.js
You might like
大师制作的中短波矿石收音机
2020/04/02 无线电
php实现获取农历(阴历)、节日、节气的类与用法示例
2017/11/20 PHP
csdn 批量接受好友邀请
2009/02/19 Javascript
Jquery实现无刷新DropDownList联动实现代码
2010/03/08 Javascript
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
JavaScript实现N皇后问题算法谜题解答
2014/12/29 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
基于JavaScript代码实现微信扫一扫下载APP
2015/12/30 Javascript
jQuery Easyui 验证两次密码输入是否相等
2016/05/13 Javascript
微信小程序-拍照或选择图片并上传文件
2017/01/06 Javascript
NodeJs 文件系统操作模块fs使用方法详解
2018/11/26 NodeJs
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
[01:19:23]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第二场
2018/04/06 DOTA
使用Python编写vim插件的简单示例
2015/04/17 Python
简单介绍Python中利用生成器实现的并发编程
2015/05/04 Python
Python实现多条件筛选目标数据功能【测试可用】
2018/06/13 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
详解python中Numpy的属性与创建矩阵
2018/09/10 Python
解决Shell执行python文件,传参空格引起的问题
2018/10/30 Python
pandas 条件搜索返回列表的方法
2018/10/30 Python
Python3.5局部变量与全局变量作用域实例分析
2019/04/30 Python
详解Python 切片语法
2019/06/10 Python
python3中sys.argv的实例用法
2020/04/24 Python
浅谈Python中的字符串
2020/06/10 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
python主要用于哪些方向
2020/07/05 Python
Html5应用程序缓存(Cache manifest)
2018/06/04 HTML / CSS
世界排名第一的运动鞋市场:Flight Club
2020/01/03 全球购物
四种会话跟踪技术
2015/05/20 面试题
《歌唱二小放牛郎》教学反思
2014/04/19 职场文书
专升本学生毕业自我鉴定
2014/10/04 职场文书
2015年党员个人自我评价
2015/03/03 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
JavaScript 去重和重复次数统计
2021/03/31 Javascript
Mysql 如何合理地统计一个数据库里的所有表的数据量
2022/04/18 MySQL
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL