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 相关文章推荐
javascript中万恶的function实例分析
May 25 Javascript
JS网页播放声音实现代码兼容各种浏览器
Sep 22 Javascript
浅析hasOwnProperty方法的应用
Nov 20 Javascript
HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果(附demo源码下载)
May 25 Javascript
基于Bootstrap实现下拉菜单项和表单导航条(两个菜单项,一个下拉菜单和登录表单导航条)
Jul 22 Javascript
JS实现标签页切换效果
May 04 Javascript
Vue路由跳转问题记录详解
Jun 15 Javascript
Angular4自制一个市县二级联动组件示例
Nov 21 Javascript
vue中动态添加class类名的方法
Sep 05 Javascript
详解element-ui中el-select的默认选择项问题
Aug 02 Javascript
vue 导航内容设置选中状态样式的例子
Nov 01 Javascript
vue实现列表垂直无缝滚动
Apr 08 Vue.js
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
PHP音乐采集(部分代码)
2007/02/14 PHP
比较全的PHP 会话(session 时间设定)使用入门代码
2008/06/05 PHP
分享一下贝贝成长进度的php代码
2012/09/14 PHP
php一些错误处理的方法与技巧总结
2013/08/10 PHP
php设计模式之委托模式
2016/02/13 PHP
mysql_escape_string()函数用法分析
2016/04/25 PHP
PHP的openssl加密扩展使用小结(推荐)
2016/07/18 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript 获取图片颜色
2009/04/05 Javascript
基于jQuery的js分页代码
2010/06/10 Javascript
javascript中xml操作实现代码
2011/11/21 Javascript
javascript禁止超链接跳转的方法
2016/02/02 Javascript
全面解析JavaScript中apply和call以及bind(推荐)
2016/06/15 Javascript
JavaScript6 let 新语法优势介绍
2016/07/15 Javascript
微信小程序 Video API实例详解
2016/10/02 Javascript
微信小程序 基础组件与导航组件详细介绍
2017/02/21 Javascript
JS一个简单的注册页面实例
2017/09/05 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
JS中appendChild追加子节点无效的解决方法
2018/10/14 Javascript
浅谈 Webpack 如何处理图片(开发、打包、优化)
2019/05/15 Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
2019/08/26 Javascript
Python求算数平方根和约数的方法汇总
2016/03/09 Python
Python selenium如何设置等待时间
2016/09/15 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
Python 类属性与实例属性,类对象与实例对象用法分析
2019/09/20 Python
Python字符串、列表、元组、字典、集合的补充实例详解
2019/12/20 Python
Pycharm 2020年最新激活码(亲测有效)
2020/09/18 Python
python代码区分大小写吗
2020/06/17 Python
python PIL模块的基本使用
2020/09/29 Python
学会迭代器设计模式,帮你大幅提升python性能
2021/01/03 Python
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
印度排名第一的蛋糕、鲜花和礼品送货:Winni
2019/08/02 全球购物
会计专业自我鉴定范文
2013/10/06 职场文书
副主任竞聘演讲稿
2014/08/18 职场文书
合作协议书模板
2014/10/10 职场文书
刑事附带民事代理词
2015/05/25 职场文书