基于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 设计模式 安全沙箱模式
Sep 24 Javascript
推荐JavaScript实现继承的最佳方式
Nov 11 Javascript
JS+CSS实现类似QQ好友及黑名单效果的树型菜单
Sep 22 Javascript
jquery取消事件冒泡的三种方法(推荐)
May 28 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
Oct 30 Javascript
详解angular 中的自定义指令之详解API
Jun 20 Javascript
JS实现闭包中的沙箱模式示例
Sep 07 Javascript
基于ajax和jsonp的原生封装(实例)
Oct 16 Javascript
使用javascript函数编写简单银行取钱存钱流程
May 26 Javascript
微信小程序使用npm支持踩坑
Nov 07 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
Apr 14 Javascript
在vue中使用console.log无效的解决
Aug 09 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加速的eAccelerator dll支持文件打包下载
2007/09/30 PHP
php实现的遍历文件夹下所有文件,编辑删除
2010/01/05 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
jquery实现submit提交表单
2015/02/03 Javascript
js实现最短的XML格式化工具实例
2015/03/12 Javascript
JS实现动态生成表格并提交表格数据向后端
2020/11/25 Javascript
Function.prototype.apply()与Function.prototype.call()小结
2016/04/27 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
jQuery中库的引用方法
2018/01/06 jQuery
angular动态表单制作
2018/02/23 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
vue实现div拖拽互换位置
2020/07/29 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
python在控制台输出进度条的方法
2015/06/20 Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
2019/01/29 Python
Python中的单下划线和双下划线使用场景详解
2019/09/09 Python
python实现代码统计程序
2019/09/19 Python
Python字符串大小写转换拼接删除空白
2019/09/19 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
pytorch中的卷积和池化计算方式详解
2020/01/03 Python
CSS3不透明度实例讲解
2016/04/26 HTML / CSS
h5页面唤起app如果没安装就跳转下载(iOS和Android)
2020/06/03 HTML / CSS
利物浦足球俱乐部官方网上商店:Liverpool FC Official Store
2018/01/13 全球购物
泰国的头号网上婴儿用品店:Motherhood.co.th
2019/04/09 全球购物
简述synchronized和java.util.concurrent.locks.Lock的异同
2014/12/08 面试题
大学活动邀请函
2014/01/28 职场文书
四年级语文教学反思
2014/02/05 职场文书
经典英文广告词
2014/03/18 职场文书
八月迷情观后感
2015/06/11 职场文书
国富论读书笔记
2015/06/26 职场文书
2016年“5.12”护士节致辞
2015/07/31 职场文书
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/06 PostgreSQL
Python Matplotlib绘制两个Y轴图像
2022/04/13 Python
解决Oracle数据库用户密码过期
2022/05/11 Oracle