html抽奖怎么重置,js实现抽奖的两种方法
本文实例为大家分享了js实现抽奖的具体代码,供大家参考,具体内容如下
抽奖活动的原理还是很简单的,通过代码一目了然,如果看不懂就私聊我,可以私下交流!
方法一:使用table写一个随机抽奖
这是html+js代码
抽奖
抽奖活动
百度 | 腾讯 | 阿里 | 京东 | 华为 |
---|---|---|---|---|
滴滴 | 蚂蚁金服 | 乐视 | 中国电网 | 中石化 |
美团 | 乐视 | 小米 | 网易 | 酷我 |
爱奇艺 | 盛大 | 短文学 | 浅墨诗韵 | 浪子一秋 |
var timer;
var button = document.querySelector("#button");
function toStart() {
// 启动定时器
if (timer == undefined) {
timer = setInterval(changeStyle, 100);
button.setAttribute("value", "停止");
} else {
clearInterval(timer);
timer = undefined;
button.setAttribute("value", "开始");
}
}
// 改变样式
var a, b;
function changeStyle() {
var tb = document.querySelector("table");
console.log(a);
if (a != undefined) {
tb.rows[a].cells[b].style.backgroundColor = "white";
}
//
// 获取要操作的元素
a = parseInt(Math.random() * 4);
b = parseInt(Math.random() * 5);
// console.log(a);
var col = tb.rows[a].cells[b];
col.style.backgroundColor = "red";
}
方法二:使用span标签写
html+js代码如下
抽奖
抽奖活动
// 获取要操作的元素
var div = document.getElementById("body");
// 动态添加span
for (var i = 0; i < 25; i++) {
// 创建一个新的标签
var el = document.createElement("span");
// 给标签设置内容
el.innerText = i;
// 添加子元素
div.appendChild(el);
}
var timer;
var button = document.querySelector("#button");
function toStart() {
// 启动定时器
if (timer == undefined) {
timer = setInterval(changeStyle, 100);
button.setAttribute("value", "停止");
} else {
clearInterval(timer);
timer = undefined;
button.setAttribute("value", "开始");
}
}
// 改变样式
var selection;
function changeStyle() {
var spans = document.getElementsByTagName("span");
if (selection != undefined) {
console.log(selection);
spans[selection].style.backgroundColor = "white";
}
selection = parseInt(Math.random() * 25);
var spans = document.getElementsByTagName("span");
var selectSpan = spans[selection];
selectSpan.style.backgroundColor = "red";
}
两个页面的css代码
*{
margin: 0;
padding: 0;
}
body{
display: block;
}
.content{
width: 500px;
margin: auto;
}
.top{
text-align: center;
height: 50px;
color: red;
font-size: 30px;
}
table{
width: 100%;
border: 1px solid red;
border-spacing: 0;
}
th{
border: 1px dashed rgb(189, 189, 86);
height: 40px;
}
.bottom{
height: 50px;
margin-top: 20px;
text-align: center;
}
.button{
background-color: #4CAF50; /* Green */
border: none;
color: white;
padding: 15px 32px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
}
/* test2-1 */
.body{
width: 512px;
height: 260px;
border: 1px solid red;
}
span{
display: inline-block;
width: 100px;
height: 50px;
border: 1px dashed #b1da1f;
line-height: 50px;
text-align: center;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
html抽奖怎么重置,js实现抽奖的两种方法相关推荐
- 简易的js获取星期几的两种方法
第一种: var a = ["日", "一", "二", "三", "四", "五&quo ...
- js阻止冒泡的两种方法
冒泡是一种很有意思的现象,在我们的 js 中也有冒泡现象,让我们一起去看看吧 先来看一段代码 <!DOCTYPE html> <html><head><met ...
- js 实现trim()的两种方法
方法一: function fn(str){var n = [];var strr = str.split('').reverse().join('');n = str.split('');for(v ...
- js生成随机颜色的两种方法
1.rgb颜色生成 function rgb(){//rgb颜色随机const r = Math.floor(Math.random()*256);const g = Math.floor(Math. ...
- JS实现合并单元格的两种方法
本后端菜狗想在网上找合并单元格的代码,结果找到的都是太老的代码,然后就只能用Js手写了两种方法(第二种方法叫了个前端大佬写的) 废话不多说,直接上代码: (由于时间有点小久,就不写思路和过程啦) 第一 ...
- 基于ArcGIS JS API实现的两种距离和面积测量方式
文章目录 前言 开发思路 主要代码 效果测试 效果图 测试页面 开发总结 参考链接 前言 在一些地图地图应用中,距离.面积测量属于基础功能.ArcGIS API for JavaScript有单独提供 ...
- 防止email被抓取的两种方法(js和css)
现在很多无聊人士都用自己的spider在网上到处抓取email, 如果你的页面上写了自己的email,那么不多久就会收到很多垃圾邮件. 有很多方法可以避免被抓取,现在很多人都把@换成#,不过估计很多蜘 ...
- js数组去重的四种方法
四种算法来实现这个目的: Array.prototype.unique1 = function () {var n = []; //一个新的临时数组for (var i = 0; i < thi ...
- iOS: JS和Native交互的两种方法,iosjsnative交互
iOS: JS和Native交互的两种方法,iosjsnative交互 背景: UIWebView: iOS 用来展示 web 端内容的控件. 1. 核心方法: - (NSString*)string ...
最新文章
- Playmaker全面实践教程之简单的使用Playmaker示例
- 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 使用 DexClassLoader 获取组件类失败 | 失败原因分析 | 自定义类加载器没有加载组件类的权限 )
- silverlight1.0绝对是垃圾,中文乱码,没治!
- 服务器预装操作系统,服务器预装操作系统吧
- Java内存运行机制
- WPF Visibility的用法
- TensorFlow学习笔记01:图
- C#判断访问入口是移动端还是PC
- top结合jstack处理线上cpu飙升问题
- element tree ui 全选_element UI tree 控件,点击父节点进行异步加载,异步加载的数据不能全选...
- URAL 1934 	Black Spot --- 最短的简单修改
- 车牌限行——条件分歧
- 科目二 侧方位停车 流程记录 LTS
- -bash: netstat: command not found
- 带蒙版的安卓剪辑软件_安卓手机上的视频剪辑软件哪款好?
- odoo----权限机制
- 关于python的英文参考文献_英文参考文献格式
- c语言gets为什么是不安全的输入
- linux 中yum 安装maven
- fix协议的服务器,FIX 协议开发(3):QuickFIX/J 实战经验小结
热门文章
- DSP TMS320C6000基础学习(5)—— 阅读DSP6713的Datasheet
- SQL常用检索语句清单
- 外篇:关于理财的一些个人见解
- html5读取ic卡,企业员工IC卡考勤系统(IC卡读写)
- 从程序员角度看ELF----__do_global_dtors_aux and __do_global_ctors_aux
- 微博的话题如何引导?
- VBA 实例:Word 转 TXT
- 第六章 80C51单片机内嵌外设及应用
- 【新书推荐】【2020.02】可穿戴设备传感器和天线的设计与优化
- 轻松让你了解朗锐慧康医疗仪器主板在监护仪的应用