基于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 相关文章推荐
InnerHtml和InnerText的区别分析
Mar 13 Javascript
用JavaScript显示随机图像或引用
Apr 21 Javascript
通过上下左右键和回车键切换光标实现代码
Mar 08 Javascript
再JavaScript的jQuery库中编写动画效果的指南
Aug 13 Javascript
JQuery解析XML数据的几个简单实例
May 18 Javascript
js实现文字选中分享功能
Jan 25 Javascript
js实现类bootstrap模态框动画
Feb 07 Javascript
weui框架实现上传、预览和删除图片功能代码
Aug 24 Javascript
解决Angular2 router.navigate刷新页面的问题
Aug 31 Javascript
浅谈webpack SplitChunksPlugin实用指南
Sep 17 Javascript
Vue2.0实现组件之间数据交互和通信操作示例
May 16 Javascript
一文搞懂ES6中的Map和Set
May 20 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
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
2013/04/13 PHP
PHP函数getenv简介和使用实例
2014/05/12 PHP
php上传文件常见问题总结
2015/02/03 PHP
PHP多线程之内部多线程实例分析
2015/03/09 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
2017/07/27 PHP
php+js实现裁剪任意形状图片
2018/10/31 PHP
Bookmarklet实现启动jQuery(模仿 云输入法)
2010/09/15 Javascript
JS在TextArea光标位置插入文字并实现移动光标到文字末尾
2013/06/21 Javascript
javascript判断机器是否联网的2种方法
2013/08/09 Javascript
jQuery中:contains选择器用法实例
2014/12/30 Javascript
js控制文本框只输入数字和小数点的方法
2015/03/10 Javascript
jquery实现兼容IE8的异步上传文件
2015/06/15 Javascript
浅谈JS中的常用选择器及属性、方法的调用
2017/07/28 Javascript
js移动端事件基础及常用事件库详解
2017/08/15 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
详解angular2 控制视图的封装模式
2018/12/27 Javascript
微信小程序地图导航功能实现完整源代码附效果图(推荐)
2019/04/28 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
2019/08/09 Javascript
layui内置模块layim发送图片添加加载动画的方法
2019/09/23 Javascript
vue-cli3自动消除console.log()的调试信息方式
2020/10/21 Javascript
python中的随机函数random的用法示例
2018/01/27 Python
python截取两个单词之间的内容方法
2018/12/25 Python
python celery分布式任务队列的使用详解
2019/07/08 Python
用Python识别人脸,人种等各种信息
2019/07/15 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
如何使用Python脚本实现文件拷贝
2019/11/20 Python
基于pygame实现童年掌机打砖块游戏
2020/02/25 Python
澳大利亚第一的设计师礼服租赁网站:GlamCorner
2017/08/13 全球购物
有影响力的人、名人和艺术家的官方商品:Represent
2019/11/26 全球购物
软件测试常见笔试题
2012/02/04 面试题
通信专业个人自我鉴定
2013/10/21 职场文书
电子商务专业学生的自我鉴定
2013/11/28 职场文书
党的群众路线教育实践活动批评与自我批评
2014/02/16 职场文书
班班通项目实施方案
2014/02/25 职场文书
捐款通知怎么写
2015/04/24 职场文书