原生JS实现九宫格抽奖效果


Posted in Javascript onApril 01, 2017

效果图:

原生JS实现九宫格抽奖效果

代码如下:

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
 <meta http-equiv="X-UA-Compatible" content="IE=edge">
 <title></title>
 <style>
 *{margin:0;padding:0;}
 #container{width:310px;height:310px;margin:30px auto;}
 #ul1{width:310px;height:310px;list-style:none;}
 #ul1 li,#ul1 a{width:100px;height:100px;border:1px solid #565656;float:left;text-align:center;line-height:100px;}
 #ul1 a:hover{cursor:pointer;color:orange;font-size:18px;}
 #ul1 .active{background:red;color:#fff;}
 #pp{line-height:32px;color:#9a9a9a;text-align:center;}
 </style>
</head>
<body>
<div id="container">
 <ul id="ul1">
 <li>一等奖</li>
 <li>二等奖</li>
 <li>三等奖</li>
 <li>四等奖</li>
 <a>开始</a>
 <li>五等奖</li>
 <li>六等奖</li>
 <li>七等奖</li>
 <li>八等奖</li>
 </ul>
 <p id="pp"></p>
</div>
<script>
 var container = document.getElementById('container'),
 li = container.getElementsByTagName('li'),
 aa = container.getElementsByTagName('a')[0],
 pp = document.getElementById('pp'),
 timer = null;
 function start(){
 var i = 0;
 var num = Math.floor(Math.random() * li.length) + 20;
 if(i<num){
 timer = setInterval(function(){
 for(var j=0;j<li.length;j++){
  li[j].className = '';
 }
 li[i%li.length].className = 'active';
 i++;
 if(i === num){
  clearInterval(timer);
  if(num%li.length === 0){
  pp.innerHTML += "恭喜您中了:8 等奖" + '<br/>';
  }else{
  pp.innerHTML += "恭喜您中了:"+ parseInt(num%li.length) + " 等奖"+ '<br/>';
  }
 }
 },130);
 }
 }
 aa.onclick = function(){
 start();
 }
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
强制设为首页代码
Jun 19 Javascript
用js实现的检测浏览器和系统的函数
Apr 09 Javascript
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
Sep 15 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
Sep 26 Javascript
node.js中的path.sep方法使用说明
Dec 08 Javascript
JavaScript获取图片像素颜色并转换为box-shadow显示
Mar 11 Javascript
详解Node.js如何开发命令行工具
Aug 14 Javascript
AngularJS包括详解及示例代码
Aug 17 Javascript
详解javascript 正则表达式之分组与前瞻匹配
May 30 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
Aug 29 Javascript
详解uniapp的全局变量实现方式
Jan 11 Javascript
微信小程序tab左右滑动切换功能的实现代码
Feb 08 Javascript
关于Node.js的events.EventEmitter用法介绍
Apr 01 #Javascript
ES6 Promise对象概念与用法分析
Apr 01 #Javascript
JavaScript中闭包的详解
Apr 01 #Javascript
基于JavaScript实现验证码功能
Apr 01 #Javascript
AngularJS1.X学习笔记2-数据绑定详解
Apr 01 #Javascript
Angularjs使用指令做表单校验的方法
Mar 31 #Javascript
JS正则获取HTML元素的方法
Mar 31 #Javascript
You might like
vBulletin HACK----关于排版的两个HACK
2006/10/09 PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
2014/07/28 PHP
php 从一个数组中随机的取出若干个不同的数实例
2016/12/31 PHP
php实现构建排除当前元素的乘积数组方法
2018/10/06 PHP
让FireFox支持innerText的实现代码
2009/12/01 Javascript
jQuery Validation插件remote验证方式的Bug解决
2010/07/01 Javascript
js中数组Array的一些常用方法总结
2013/08/12 Javascript
js弹窗返回值详解(window.open方式)
2014/01/11 Javascript
Array栈方法和队列方法的特点说明
2014/01/24 Javascript
javascript设计模式之解释器模式详解
2014/06/05 Javascript
javascript 实现 原路返回
2015/01/21 Javascript
Node.js事件循环(Event Loop)和线程池详解
2015/01/28 Javascript
JavaScript转换二进制编码为ASCII码的方法
2015/04/16 Javascript
jQuery使用$.ajax进行异步刷新的方法(附demo下载)
2015/12/04 Javascript
javascript实现简单计算器效果【推荐】
2016/04/19 Javascript
JS图片定时翻滚效果实现方法
2016/06/21 Javascript
JavaScript 节流函数 Throttle 详解
2016/07/04 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
2018/03/06 Javascript
vue input标签通用指令校验的实现
2019/11/05 Javascript
python判断图片宽度和高度后删除图片的方法
2015/05/22 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
2016/05/24 Python
Python向MySQL批量插数据的实例讲解
2018/03/31 Python
python numpy生成等差数列、等比数列的实例
2020/02/25 Python
买卖正宗运动鞋:GOAT
2019/12/06 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
大学生求职中的自我评价
2013/10/01 职场文书
毕业生个人求职的自我评价
2013/10/28 职场文书
学期研究性学习个人的自我评价
2014/01/09 职场文书
实验教师岗位职责
2014/02/13 职场文书
四风剖析查摆对照检查材料思想汇报
2014/09/24 职场文书
投资申请报告
2015/05/19 职场文书
2020优秀员工演讲稿(三篇)
2019/10/17 职场文书
温馨祝福晨语:美丽的一天从我的问候开始
2019/11/28 职场文书
详解python的内存分配机制
2021/05/10 Python
maven依赖的version声明控制方式
2022/01/18 Java/Android