基于element-ui,vue的html随机点名器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

点击开始点名,进入循环,点击停止,会禁用按钮 在500毫秒之后,将点到的人名字放到上面,在下面表体会消失这个人,
点名之后可以刷新。暂时还没有做将点到的人还回来。(1.0)

用到的资料,element-ui, vue javascript jquery。 需要引入ecelemtn-ui, vue , jquery。

HTML

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title><script src="../Vue.jsv2.6.12.js" type="text/javascript" charset="utf-8"></script><script src="../element-ui/lib/index.js" type="text/javascript" charset="utf-8"></script><link rel="stylesheet" type="text/css" href="../element-ui/lib/theme-chalk/index.css" /><link rel="stylesheet" type="text/css" href="../css/silence.css" /><script src="../jquery-3.6.0.min.js" type="text/javascript" charset="utf-8"></script></head><body><div id="silence"><!-- 这里是被抽到姓名的人在这个卡片出现 --><el-card shadow="always" class="mycard"> </el-card><!-- 随机点名 --><div class="randomMenu"><el-button type="success" :disabled="sjdmDisabled" @click="clickSjdmBtn">{{sjdmName}}</el-button></div><!-- 横切线 --><el-divider content-position="right"></el-divider><!-- 姓名body体 --><div shadow="always" class="flexBodyName"><div v-for="name in names"><el-button class="btn" @click="dblBtnName"  type="success">{{name}}</el-button></div></div></div></body><script src="../js/silence.js" type="text/javascript" charset="utf-8"></script>
</html>

CSS

body {/* background-color: #C2E7B0; */background-color: #F0F9EB;
}/* 点名器主面板 */
.flexBodyName {width: 70%;margin: auto;background-color: ##A0CFFF;padding: 10px;/* flex 布局 */display: flex;justify-content: space-around;flex-wrap: wrap;/* 边框阴影 */box-shadow: 0 2px 4px rgba(0, 0, 0, .12), 0 0 6px rgba(0, 0, 0, .04)/*居中margin: 0;position: absolute;top: 50%;left: 50%;-ms-transform: translate(-50%, -50%);transform: translate(-50%, -50%); */}/* 姓名按钮 */
.btn {margin-top: 6px;margin-bottom: 6px;width: 90px;height: 50px;background-color: #F0C78A;
}/* 按钮左边距取消 */
.el-button+.el-button {margin-left: initial;
}/*卡片 */
.mycard {background-color: ##A0CFFF;
}/* 卡片内边距 */
.el-card__body {padding: 0;
}/* 随机点名下拉菜单 */
.randomMenu {margin-top: 10px;text-align: right;
}
.el-divider--horizontal{margin: 10px;
}

JS

let vue = new Vue({el: "#silence",data: {sjdmName: "开始点名",sjdmDisabled: false, //随机点名的是否禁用names: ["张三", "李四", "赵六", "奥特曼", "灰太狼", "喜羊羊", "钱七", "小美", "小明", "四个字的", "王五", "王五","张三", "李四", "赵六", "奥特曼", "灰太狼", "喜羊羊", "钱七", "小美", "小明", "四个字的", "王五", "王五","张三", "李四", "赵六", "奥特曼", "灰太狼", "喜羊羊", "钱七", "小美", "小明", "四个字的", "王五", "王五"]},methods: {/* 开始点名事件被单击 */clickSjdmBtn() {random();},dblBtnName() {console.log("dddd")}}
});flag = false; //随机点名
let lastIndex = -1; //旧索引
function random() {flag = !flag;if (flag) {/* 获取所有人的对象数组 */btnDom = $(".flexBodyName .btn");//获取人数const number = btnDom.length - 1;//按钮名称改变vue.sjdmName = "点击停止";interval = setInterval(function() {//获得随机数let newIndex = Math.round(Math.random() * number);//将前一次样式置为空if (lastIndex != -1) {btnDom[lastIndex].removeAttribute("style")}//改变当前背景色btnDom[newIndex].style.background = "red";//将新索引赋值给老的索引lastIndex = newIndex;}, 50);} else {//将按钮置为禁用状态vue.sjdmDisabled = true;//停止循环clearInterval(interval);//500毫秒之后运行一次, 在这里停顿一下,能看清具体选到哪里了0.setTimeout(function() {/* 删除样式 */// 	btnDom[lastIndex].removeAttribute("style");//转为jquery对象let dom = $(btnDom[lastIndex]);//添加一个左边距dom.css("margin-left", "10px");//将当前对象,添加到卡片中$(".mycard").append(dom);lastIndex = -1;//按钮名称改变vue.sjdmName = "开始点名";//启用按钮vue.sjdmDisabled = false;}, 500);}
}
//

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442719.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elementui vue的html随机点名器软件网页版源码1.1

**在之前基础上新增了点击开始点名之后&#xff0c;判断姓名池的数量的判断&#xff0c;如果数量为零给出提示。 按钮的双击&#xff0c; 如果是在姓名池&#xff0c;在会进入上面的被点名状态&#xff0c; 如果是在上面卡片中的点名状态&#xff0c;则会重新回到姓名池 ** HTM…

elementuiDemo1.1

1.1版本 &#xff0c;大概完成浏览器的整体适配&#xff0c; tab的增删&#xff0c;选中 处理中心 item&#xff0c;的新增。动态获取名称 src路径。 JS let vue new Vue({el: "#main",data: {/* tab */editableTabsValue: 1,/* 默认选中&#xff0c;如果有新增则会…

html css简单form表单源码

<!DOCTYPE html> <html><head><meta charset"utf-8"><title>用户注册</title></head><style>body {background-color: #F0F9EB;margin: 0;position: absolute;top: 50%;left: 50%;-ms-transform: translate(-50%, -…

好看的a标签按钮样式

<a class"a1" href"#">返回首页</a><a class"a2" href"#">返回首页</a><style>.a1 {color: #000000;padding: 10px;text-decoration: none;font-size: 16px;background-color: #dce1e6;}.a1:active {ba…

java连接mysql数据库C3P0入门

这里使用的是phpstudy软件&#xff0c;会自带mysql&#xff0c;这里启动数据库。 **sqlyong 可视化建立对数据库的连接&#xff0c;地址&#xff0c;我这里是本地所以用的是localhost&#xff0c; 用户名&#xff1a; 密码&#xff1a; 在phpstury 可以建立修改&#xff0c; 然…

java的druid连接

导入jar包 将druid配置文件放到src目录下 import cn.silence2.domain.Student; import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource; import java.io.InputStream; import java.sql.Connection; import java.sql.Date; import java.sql.Prepar…

java ==号比较String字符串的地址

/*** java 号比较String字符串的地址* <p>* String类代表字符串。 Java程序中的所有字符串文字&#xff08;例如"abc" &#xff09;都被实现为此类的实例。* 字符串不变; 它们的值在创建后不能被更改。 字符串缓冲区支持可变字符串。* 因为String对象是不可变的…

javaweb jsp页面无法解析${message}

我遇到的问题是jsp 页面无法解析/${ } 标签&#xff0c; 后台和页面都没有报错。 原因时web.xml <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns"http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi"http://www.w3.org/2001…

vue element-ui 无法渲染表格数据解决

页面无报错 ajax请求数据。数据正常到达。 但是无法渲染。 换成 axios.get("/user/findAll").then(resp > {this.tableData resp.data;});问题解决。 虽然不知道为啥。但是问题解决了。哈哈&#xff01;

java数组及Arrays创建一个int 类型数组 数组元素由键盘录入,每次打印插入排序的结果(数组扩容,数组排序,键盘录入)

author silence丶你的名字 java数组及Arrays创建一个int 类型数组 数组元素由键盘录入&#xff0c;每次打印插入排序的结果 初始数组元素1 for死循环 获取用户录入的数据&#xff0c;如果为9527 程序结束&#xff0c;否则拷贝一个新数组&#xff0c;进行排序 避免原始数组被排…

三个球A,B,C大小形状相同,且其中有一个球与其他球的重量不同,要求找出这个不一样的球

import java.util.Arrays; import java.util.Scanner;/*** author silence丶黎明* 三个球A,B,C大小形状相同&#xff0c;且其中有一个球与其他球的重量不同&#xff0c;要求找出这个不一样的球* 输入格式&#xff1a;* 输入在一行中给出3个正整数 顺序对应球 A,B,C 的重量* 输出…

编写程序,随机产生20个0到1之间的数,将这20个数写入文本文件中,要求每行5个数

import java.io.File; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.util.Arrays; import java.util.Random;/*** author silence丶黎明* 编写程序,随机产生20个0到1之间的数,将这20个数写入文本文件中&#xff0c;要…

调用SMS腾讯云短信验证码API的几个坑,及详细使用流程

前言 首先说下&#xff0c;几个坑已解决。准备说一下。使用的一些步骤 因为项目有一个短信验证码登录注册的&#xff0c;首先注册的是阿里的。但是审核没有审核通过&#xff0c;所以有注册了腾讯的 本来向截图一下阿里的&#xff0c;结果登录出错了&#xff0c;这里就不说了。…

腾讯云COS对象存储图片文件API的详细步骤过程

首先创建一个桶。相当于你存储图片的容器。我这里是存储图片。 我选则是共有读&#xff0c;私有写。因为不选择共有读的话&#xff0c;以后别的地方没办法访问 注意&#xff1a; 公有读权限可以通过匿名身份直接读取您存储桶中的数据&#xff0c;存在一定的安全风险&#xff0c…

java PageUtil + stream 手动计算List 分页

交代一下前言&#xff0c;数据是redis中查询 140,193,88,117 格式大概是这样。 需要切割为long类型的list数组。需要手动计算分页&#xff0c;去mongodb中查询数据。这里我用的手动计算分页的是 hutool 工具包 import cn.hutool.core.util.PageUtil; 里面挺多实用的工具 <…

Redis 缓存 Key

/*** controller 缓存key 自定义前缀 url param token* 生成redis key&#xff1a;SERVER_CACHE_DATA rul 参数&#xff08;param&#xff09; token** param request HttpServletRequest* return createRedisKey*/public static String createRedisKey(HttpServletReques…

UserThreadLocal 用户线程Token拦截验证

注册拦截器 package com.tanhua.server.config;import com.tanhua.server.interceptor.RedisCacheInterceptor; import com.tanhua.server.interceptor.UserTokenInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.co…

jsonwebtoken jwt token 简单加密

<dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version> </dependency> //生成tokenMap<String, Object> claims new HashMap<String, Object>();claims.put(&q…

RelativeDateFormat时间计算工具类

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;/*** 时间计算工具类*/ public class RelativeDateFormat {private static final long ONE_MINUTE 60000L;private static final long ONE_HOUR 3600000L;private static final …