本文实例为大家分享了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实现抽奖的两种方法相关推荐

  1. 简易的js获取星期几的两种方法

    第一种: var a = ["日", "一", "二", "三", "四", "五&quo ...

  2. js阻止冒泡的两种方法

    冒泡是一种很有意思的现象,在我们的 js 中也有冒泡现象,让我们一起去看看吧 先来看一段代码 <!DOCTYPE html> <html><head><met ...

  3. js 实现trim()的两种方法

    方法一: function fn(str){var n = [];var strr = str.split('').reverse().join('');n = str.split('');for(v ...

  4. js生成随机颜色的两种方法

    1.rgb颜色生成 function rgb(){//rgb颜色随机const r = Math.floor(Math.random()*256);const g = Math.floor(Math. ...

  5. JS实现合并单元格的两种方法

    本后端菜狗想在网上找合并单元格的代码,结果找到的都是太老的代码,然后就只能用Js手写了两种方法(第二种方法叫了个前端大佬写的) 废话不多说,直接上代码: (由于时间有点小久,就不写思路和过程啦) 第一 ...

  6. 基于ArcGIS JS API实现的两种距离和面积测量方式

    文章目录 前言 开发思路 主要代码 效果测试 效果图 测试页面 开发总结 参考链接 前言 在一些地图地图应用中,距离.面积测量属于基础功能.ArcGIS API for JavaScript有单独提供 ...

  7. 防止email被抓取的两种方法(js和css)

    现在很多无聊人士都用自己的spider在网上到处抓取email, 如果你的页面上写了自己的email,那么不多久就会收到很多垃圾邮件. 有很多方法可以避免被抓取,现在很多人都把@换成#,不过估计很多蜘 ...

  8. js数组去重的四种方法

    四种算法来实现这个目的: Array.prototype.unique1 = function () {var n = []; //一个新的临时数组for (var i = 0; i < thi ...

  9. iOS: JS和Native交互的两种方法,iosjsnative交互

    iOS: JS和Native交互的两种方法,iosjsnative交互 背景: UIWebView: iOS 用来展示 web 端内容的控件. 1. 核心方法: - (NSString*)string ...

最新文章

  1. Playmaker全面实践教程之简单的使用Playmaker示例
  2. 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( 使用 DexClassLoader 获取组件类失败 | 失败原因分析 | 自定义类加载器没有加载组件类的权限 )
  3. silverlight1.0绝对是垃圾,中文乱码,没治!
  4. 服务器预装操作系统,服务器预装操作系统吧
  5. Java内存运行机制
  6. WPF Visibility的用法
  7. TensorFlow学习笔记01:图
  8. C#判断访问入口是移动端还是PC
  9. top结合jstack处理线上cpu飙升问题
  10. element tree ui 全选_element UI tree 控件,点击父节点进行异步加载,异步加载的数据不能全选...
  11. URAL 1934 Black Spot --- 最短的简单修改
  12. 车牌限行——条件分歧
  13. 科目二 侧方位停车 流程记录 LTS
  14. -bash: netstat: command not found
  15. 带蒙版的安卓剪辑软件_安卓手机上的视频剪辑软件哪款好?
  16. odoo----权限机制
  17. 关于python的英文参考文献_英文参考文献格式
  18. c语言gets为什么是不安全的输入
  19. linux 中yum 安装maven
  20. fix协议的服务器,FIX 协议开发(3):QuickFIX/J 实战经验小结

热门文章

  1. DSP TMS320C6000基础学习(5)—— 阅读DSP6713的Datasheet
  2. SQL常用检索语句清单
  3. 外篇:关于理财的一些个人见解
  4. html5读取ic卡,企业员工IC卡考勤系统(IC卡读写)
  5. 从程序员角度看ELF----__do_global_dtors_aux and __do_global_ctors_aux
  6. 微博的话题如何引导?
  7. VBA 实例:Word 转 TXT
  8. 第六章 80C51单片机内嵌外设及应用
  9. 【新书推荐】【2020.02】可穿戴设备传感器和天线的设计与优化
  10. 轻松让你了解朗锐慧康医疗仪器主板在监护仪的应用