基于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 面向对象编程  function是方法(函数)
Sep 17 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
Dec 11 Javascript
Javascript页面添加到收藏夹的简单方法
Aug 07 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
Oct 16 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
Feb 14 Javascript
分享自己用JS做的扫雷小游戏
Feb 17 Javascript
两种方法解决javascript url post 特殊字符转义 + &amp; #
Apr 13 Javascript
jQuery中绑定事件bind() on() live() one()的异同
Feb 23 Javascript
利用vue+elementUI实现部分引入组件的方法详解
Nov 22 Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 Javascript
jQuery控制input只能输入数字和两位小数的方法
May 16 jQuery
js将URL网址转为16进制加密与解密函数
Mar 04 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
Smarty的配置与高级缓存技术分享
2012/06/05 PHP
PHP中的生成XML文件的4种方法分享
2012/10/06 PHP
关于PHP结束标签的使用细节探讨及联想
2013/03/04 PHP
详解php中的implements 使用
2017/06/13 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
jQuery asp.net 用json格式返回自定义对象
2010/04/07 Javascript
JQuery触发radio或checkbox的change事件
2012/12/18 Javascript
Jquery AJAX POST与GET之间的区别
2013/11/14 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
Node.js安装教程和NPM包管理器使用详解
2014/08/16 Javascript
javascript委托(Delegate)blur和focus用法实例分析
2015/05/26 Javascript
jquery表单验证需要做些什么
2015/11/17 Javascript
javascript实现添加附件功能的方法
2015/11/18 Javascript
jquery判断复选框是否选中进行答题提示特效
2015/12/10 Javascript
浅谈javascript中的call、apply、bind
2016/03/06 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
jQuery soColorPacker 网页拾色器
2016/06/22 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
vue监听scroll的坑的解决方法
2017/09/07 Javascript
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
微信小程序功能之全屏滚动效果的实现代码
2018/11/22 Javascript
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
Nest.js环境变量配置与序列化详解
2021/02/21 Javascript
[01:05:56]Liquid vs VP Supermajor决赛 BO 第二场 6.10
2018/07/04 DOTA
python连接mysql数据库示例(做增删改操作)
2013/12/31 Python
python插入数据到列表的方法
2015/04/30 Python
Python使用crontab模块设置和清除定时任务操作详解
2019/04/09 Python
python并发编程多进程 模拟抢票实现过程
2019/08/20 Python
Django视图、传参和forms验证操作
2020/07/15 Python
pytorch __init__、forward与__call__的用法小结
2021/02/27 Python
工作表扬信的范文
2014/01/10 职场文书
2014年职称评定工作总结
2014/11/26 职场文书
MySQL 主从复制数据不一致的解决方法
2022/03/18 MySQL
Python中三种花式打印的示例详解
2022/03/19 Python
python开发人人对战的五子棋小游戏
2022/05/02 Python