js实现抽奖效果


Posted in Javascript onMarch 27, 2017

效果图:

js实现抽奖效果

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>随机抽奖</title>
  <style>
    *{margin: 0;padding: 0;}
    body{
       background:darksalmon;
    }
    h1,#ks,#js{
       text-align: center;
     }
    #ks{
       width: 100px;
       height: 70px;
       background: blueviolet;
       border-radius: 10px;
       line-height: 70px;
       margin:3% 0 0 40%;
     }
    #ks:hover{
      width: 100px;
      height: 70px;
      background: tomato;
      border-radius: 10px;
      line-height: 70px;
    }
    #js{
      width: 100px;
      height: 70px;
      background: blueviolet;
      border-radius: 10px;
      line-height: 70px;
      margin:-5% 0 0 50%;
    }
    #js:hover{
      width: 100px;
      height: 70px;
      background: tomato;
      border-radius: 10px;
      line-height: 70px;
    }
    .jp{
      border:3px solid #CD5C5C;
      border-radius:10px;
      width:95px;
      height:23px;
      background:#ff3030;
      padding-top:5px;
      text-align:center;
      color: #ff7ee1;
    }
    #jp{
      width: 100%;
      height: 200px;
      background: orangered;
      position: absolute;
      margin-top: 300px;
    }
    #jp span{
     font-size: 30px;
    }
    #tx{
      font-size: 60px;
      color: #fff;
    }
  </style>
</head>
<body>
   <h1>抽奖了</h1>
   <div id="ks" onclick="ks()">开始抽奖</div><!--如何通过一个按钮实现开始和关闭?-->
   <div id="js" onclick="gb()">停止抽奖</div>
   <div id="jp"><span>恭喜你获得了:</span><span id="tx"></span></div>
<script>
  var arr=["三星","苹果","华为·荣耀","小米","魅族","中兴·努比亚","酷派","vivo(蓝厂)","oppo(绿厂)"];
  //循环添加的数组
  var lieshu=3;//列数
  console.log(arr.length);
  console.log("可以分:"+arr.length/lieshu+"行");
  for(var i=0;i<arr.length/lieshu;i++){//控制行数
    for(var j=0;j<lieshu;j++){//控制列
      if(i*lieshu+j<arr.length){
        console.log("循环最内层:"+i*lieshu+j);
        document.write("<div id=\"jiang"+(i*lieshu+j)+"\" class=\"jp\" style =\"" +
          "position:absolute;left:"+(j*110+500)+"px;" +"top:" +(i*50+200)+"px;\">"+
          arr[i*lieshu+j]+"</div>");
           /*  document.write 网页内写文件
              i*lieshu+j 为个数
           *   (j*110+500) 110 为列边距 500为整个表格;列偏移
           *   (i*40+300)  40 行间距  300为整个表格;列偏移
           *
           * */
       }
    }
  }
  var bs=-1;//用于循环过后变色
  var t;
 function ks(){
   /* 开始变色的方法*/
   if(bs!=-1){
    document.getElementById("jiang"+bs).style.background="#ff3030";
    }
    var shuijisu=Math.floor(Math.random()*arr.length);//生成arr.length个 随机数向下取证
    document.getElementById("jiang"+shuijisu).style.background="#3500cc";

    bs =shuijisu;//shuijisu 代指添加元素的下表
    t =setTimeout("ks()",100);
 }
function gb() {
  clearTimeout(t);
  document.getElementById("tx").innerHTML =document.getElementById("jiang"+bs).innerHTML;
//修改id="tx"类的值

}
</script>
</body>
</html>

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

Javascript 相关文章推荐
JQuery 构建客户/服务分离的链接模型中Table分页代码效率初探
Jan 22 Javascript
jQuery 学习第七课 扩展jQuery的功能 插件开发
May 17 Javascript
在vs2010中调试javascript代码方法
Feb 11 Javascript
javascript小数四舍五入多种方法实现
Dec 23 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
Jul 10 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
Sep 15 Javascript
js实现数组转换成json
Jun 26 Javascript
JavaScript中清空数组的三种方式
Mar 22 Javascript
.vue文件 加scoped 样式不起作用的解决方法
May 28 Javascript
详解在vue-cli中使用graphql即vue-apollo的用法
Sep 08 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
Nov 06 Javascript
JavaScript中时间格式化新思路toLocaleString()
Nov 07 Javascript
AngularJS前端页面操作之用户修改密码功能示例
Mar 27 #Javascript
基于JavaScript实现移动端无限加载分页
Mar 27 #Javascript
JS字符串统计操作示例【遍历,截取,输出,计算】
Mar 27 #Javascript
JS简单实现数组去重的方法示例
Mar 27 #Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
Mar 27 #jQuery
基于JavaScript实现焦点图轮播效果
Mar 27 #Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
Mar 27 #Javascript
You might like
《破坏领主》销量已超100万 未来将继续开发新内容
2020/03/08 其他游戏
PHP使用strtotime计算两个给定日期之间天数的方法
2015/03/18 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
2020/03/26 PHP
JavaScript基本对象
2007/01/11 Javascript
JavaScript开发规范要求(规范化代码)
2010/08/16 Javascript
javascipt匹配单行和多行注释的正则表达式
2013/11/20 Javascript
浅谈JavaScript字符串与数组
2015/06/03 Javascript
灵活使用数组制作图片切换js实现
2016/07/28 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
bootstrap table实现点击翻页功能 可记录上下页选中的行
2017/09/28 Javascript
React中阻止事件冒泡的问题详析
2019/04/12 Javascript
vue router导航守卫(router.beforeEach())的使用详解
2019/04/19 Javascript
如何在微信小程序中使用骨架屏的步骤
2020/06/12 Javascript
[01:03:36]Ti4 循环赛第三日DK vs Titan
2014/07/12 DOTA
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
python构建深度神经网络(DNN)
2018/03/10 Python
python 进程间数据共享multiProcess.Manger实现解析
2019/09/23 Python
Python3 hashlib密码散列算法原理详解
2020/03/30 Python
学习Python爬虫的几点建议
2020/08/05 Python
Python如何测试stdout输出
2020/08/10 Python
Python数据库封装实现代码示例解析
2020/09/05 Python
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
ReVive利维肤美国官网:RéVive Skincare
2018/04/18 全球购物
马来西亚太阳镜、眼镜和隐形眼镜网上商店:Focus Point
2018/12/13 全球购物
日本最大的购物网站乐天市场国际版:Rakuten Global Market(支持中文)
2020/02/03 全球购物
应届生求职信写作技巧
2013/10/24 职场文书
大一军训感言
2014/01/09 职场文书
网络研修随笔感言
2014/02/17 职场文书
祖国在我心中演讲稿500字
2014/05/04 职场文书
企业宣传标语
2014/06/09 职场文书
国际金融专业自荐信
2014/07/05 职场文书
员工团队活动方案
2014/08/28 职场文书
离婚协议书标准格式
2014/10/04 职场文书
教师培训学习心得体会
2016/01/21 职场文书
Mysql systemctl start mysqld报错的问题解决
2021/06/03 MySQL
Python实现生成bmp图像的方法
2021/06/13 Python