javascript跑马灯抽奖实例讲解


Posted in Javascript onApril 17, 2020

本文实例讲解了javascript跑马灯抽奖特效,特别适合用于抽奖活动,分享给大家供大家参考,具体内容如下

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>抽奖游戏</title>
<style>
#box{
 width:720px;
 margin:0 auto;
 margin-top:20px;
 box-shadow:0px 0px 2px #333;
}
.pic{
 width:200px;
 height:200px;
 float:left;
 line-height:200px;
 margin:10px;
 border:5px #fff solid;
 color:blue;
 font-size: 35px;
 text-align: center;
}
.anniu{
 width:200px;
 height:200px;
 float:left;
 margin:10px;
}
#drawBtn{
 color:red;
 font-size:30px;
 width:200px;
 height:200px;
 box-shadow:0px 0px 2px #333;
 font-weight: bold;
}
 </style>
 <script>
 window.onload=init;
 var setting={
 count:0,
 total:24,
 delay:20,
 picIndex:[0,1,2,4,7,6,5,3]
 }
 function init(){
 document.getElementById("drawBtn").onclick=function(){
  setting.count=0;
  setting.delay=20;
  this.disable=true;//禁用按钮
  var drawBtn=this;
  //获取所有图片的div
  var allDivs=document.getElementsByClassName("pic");
  //获得一个随机整数,代表中奖的那个位置,3*8+(0-7)
  setting.total+=Math.floor(Math.random()*allDivs.length);
  //设置定时器,依次修改每个div边框的颜色.
  setTimeout(function show(){
  //重置上一个边框的颜色
  for (var i=0;i<allDivs.length;i++){
   allDivs[i].style.borderColor="#fff";
   allDivs[i].style.opacity=0.7;
  }
  //找到要修改的那个边框的颜色设置
   var currentPic=allDivs[setting.picIndex[setting.count%8]];
   currentPic.style.borderColor="red";
   currentPic.style.opacity=1.0;
  setting.count++;
  setting.delay+=2*setting.count;
   if(setting.count>setting.total){
   alert("您中奖了,哈哈");
   drawBtn.disable=false;
   return;
   }
   setTimeout(show,setting.delay);
  },setting.delay);
 }
 }
 </script>
</head>
<body>
<div id="box">
 <div class="pic">1</div>
 <div class="pic">2</div>
 <div class="pic">3</div>
 <div class="pic">4</div>
 <div class="anniu"><input type="button" value="我要抽奖" id="drawBtn"/></div>
 <div class="pic">5</div>
 <div class="pic">6</div>
 <div class="pic">7</div>
 <div class="pic">8</div>
</div>
</body>
</html>

想要学习更多关于抽奖功能的实现,请参考此专题:抽奖功能

以上就是本文的详细内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
含有CKEditor的表单如何提交
Jan 09 Javascript
js 获取元素在页面上的偏移量的方法汇总
Apr 13 Javascript
JS+CSS实现美化的下拉列表框效果
Aug 11 Javascript
node.js实现博客小爬虫的实例代码
Oct 08 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
Oct 30 Javascript
基本DOM节点操作
Jan 17 Javascript
100多个基础常用JS函数和语法集合大全
Feb 16 Javascript
vue使用ajax获取后台数据进行显示的示例
Aug 09 Javascript
JS实现的RC4加密算法示例
Aug 16 Javascript
Vue组件创建和传值的方法
Aug 17 Javascript
vue 判断页面是首次进入还是再次刷新的实例
Nov 05 Javascript
JavaScript高级程序设计之基本引用类型
Nov 17 Javascript
jQuery页面刷新(局部、全部)问题分析
Jan 09 #Javascript
javascript返回顶部的按钮实现方法
Jan 09 #Javascript
javascript类型系统 Array对象学习笔记
Jan 09 #Javascript
JS中生成随机数的用法及相关函数
Jan 09 #Javascript
JavaScript电子时钟倒计时
Jan 09 #Javascript
bootstrap-treeview自定义双击事件实现方法
Jan 09 #Javascript
WordPress中利用AJAX异步获取评论用户头像的方法
Jan 08 #Javascript
You might like
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
PDO的安全处理与事物处理方法
2016/10/31 PHP
PHP制作登录异常ip检测功能的实例代码
2016/11/16 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
JS 字符串连接[性能比较]
2009/05/10 Javascript
js中this用法实例详解
2015/05/05 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
Bootstrap轮播加上css3动画,炫酷到底!
2015/12/22 Javascript
JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法
2016/06/05 Javascript
AngularJS控制器之间的通信方式详解
2016/11/03 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
JavaScript中双向数据绑定详解
2017/05/03 Javascript
React中上传图片到七牛的示例代码
2017/10/10 Javascript
JavaScript面试出现频繁的一些易错点整理
2018/03/29 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
谈谈JavaScript中super(props)的重要性
2019/02/12 Javascript
[05:02][DOTA2]DOTA进化论 第一期
2013/09/27 DOTA
[08:42]DOTA2每周TOP10 精彩击杀集锦vol.2
2014/06/25 DOTA
[01:01:24]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[35:27]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第二场 10.29
2020/10/29 DOTA
Windows下PyMongo下载及安装教程
2015/04/27 Python
python实现电子产品商店
2019/02/26 Python
Python字符串大小写转换拼接删除空白
2019/09/19 Python
Python反爬虫伪装浏览器进行爬虫
2020/02/28 Python
Python smtp邮件发送模块用法教程
2020/06/15 Python
详解python变量与数据类型
2020/08/25 Python
小白教你PyCharm从下载到安装再到科学使用PyCharm2020最新激活码
2020/09/25 Python
利用html5 canvas动态画饼状图的示例代码
2018/04/02 HTML / CSS
HomeAway英国:全球领先的度假租赁在线市场
2020/02/03 全球购物
工程监理应届生求职信
2013/11/09 职场文书
小孩百日宴答谢词
2014/01/15 职场文书
新闻编辑求职信
2014/07/13 职场文书
好的促销活动方案
2014/08/21 职场文书
Java基础之详解HashSet的使用方法
2021/06/30 Java/Android
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers
Python序列化模块JSON与Pickle
2022/06/05 Python