基于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 相关文章推荐
我见过最全的个人js加解密功能页面
Dec 12 Javascript
jQuery源码分析之Event事件分析
Jun 07 Javascript
javascript闭包的理解和实例
Aug 12 Javascript
javascript阻止浏览器后退事件防止误操作清空表单
Nov 22 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
Sep 10 Javascript
详解Js模板引擎(TrimPath)
Nov 22 Javascript
jQuery实现可兼容IE6的遮罩功能详解
Sep 19 jQuery
微信小程序视图控件与bindtap之间的问题的解决
Apr 08 Javascript
JavaScrip数组去重操作实例小结
Jun 20 Javascript
微信小程序实现类似微信点击语音播放效果
Mar 30 Javascript
JS实现水平遍历和嵌套递归操作示例
Aug 15 Javascript
JS控制GIF图片的停止与显示
Oct 24 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
PHP中去掉字符串首尾空格的方法
2012/05/19 PHP
基于flush()不能按顺序输出时的解决办法
2013/06/29 PHP
ThinkPHP5框架缓存查询操作分析
2018/05/30 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
2020/08/06 PHP
IE6中使用position导致页面变形的解决方案(js代码)
2011/01/09 Javascript
Node.js 制作实时多人游戏框架
2015/01/08 Javascript
使用angular写一个hello world
2015/01/23 Javascript
解决angular的$http.post()提交数据时后台接收不到参数值问题的方法
2015/12/10 Javascript
基于JavaScript实现弹出框效果
2016/02/19 Javascript
解析JavaScript中的字符串类型与字符编码支持
2016/06/24 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
jQuery判断是否存在滚动条的简单方法
2016/09/17 Javascript
原生JS实现几个常用DOM操作API实例
2017/01/19 Javascript
基于vue-cli创建的项目的目录结构及说明介绍
2017/11/23 Javascript
微信小程序实现树莓派(raspberry pi)小车控制
2020/02/12 Javascript
javascript设计模式 ? 组合模式原理与应用实例分析
2020/04/14 Javascript
vue配置多代理服务接口地址操作
2020/09/08 Javascript
react使用antd表单赋值,用于修改弹框的操作
2020/10/29 Javascript
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
python条件变量之生产者与消费者操作实例分析
2017/03/22 Python
Django 使用logging打印日志的实例
2018/04/28 Python
python获取本机所有IP地址的方法
2018/12/26 Python
python调用动态链接库的基本过程详解
2019/06/19 Python
python3 selenium自动化 frame表单嵌套的切换方法
2019/08/23 Python
给大家整理了19个pythonic的编程习惯(小结)
2019/09/25 Python
Python拆分大型CSV文件代码实例
2019/10/07 Python
python能自学吗
2020/06/18 Python
深入浅析Python代码规范性检测
2020/07/31 Python
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
环境工程大学生个人的自我评价
2013/10/08 职场文书
培训心得体会
2013/12/29 职场文书
自我鉴定书
2014/03/24 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
新学期感想
2015/08/10 职场文书
Android开发EditText禁止输入监听及InputFilter字符过滤
2022/06/10 Java/Android