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 toggle()设置CSS样式
Nov 05 Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
Apr 02 Javascript
textarea 控制输入字符字节数(示例代码)
Dec 27 Javascript
Javascript基础教程之break和continue语句
Jan 18 Javascript
基于AngularJS+HTML+Groovy实现登录功能
Feb 17 Javascript
jquery中validate与form插件提交的方式小结
Mar 26 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
Aug 08 Javascript
Vue实现导出excel表格功能
Mar 30 Javascript
vue检测对象和数组的变化分析
Jun 30 Javascript
详解wepy开发小程序踩过的坑(小结)
May 22 Javascript
Ant Design moment对象和字符串之间的相互转化教程
Oct 27 Javascript
vue使用exif获取图片旋转,压缩的示例代码
Dec 11 Vue.js
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
PHP读取MySQL数据代码
2008/06/05 PHP
php调整gif动画图片尺寸示例代码分享
2013/12/05 PHP
PHP输出缓冲控制Output Control系列函数详解
2015/07/02 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
2015/12/24 PHP
php获取flash尺寸详细数据的方法
2016/11/12 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
input 输入框内的输入事件详细分析
2010/03/17 Javascript
js showModalDialog参数的使用详解
2014/01/07 Javascript
jquery下div 的resize事件示例代码
2014/03/09 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
jquery实现的横向二级导航效果代码
2015/08/26 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
在ABP框架中使用BootstrapTable组件的方法
2017/07/31 Javascript
vue 实现数字滚动增加效果的实例代码
2018/07/06 Javascript
详解webpack打包第三方类库的正确姿势
2018/10/20 Javascript
react MPA 多页配置详解
2019/10/18 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
详解Vue中Axios封装API接口的思路及方法
2020/10/10 Javascript
Python实现对PPT文件进行截图操作的方法
2015/04/28 Python
Python编写生成验证码的脚本的教程
2015/05/04 Python
python发送HTTP请求的方法小结
2015/07/08 Python
Python实现类似jQuery使用中的链式调用的示例
2016/06/16 Python
Python 实现链表实例代码
2017/04/07 Python
Python实现多进程共享数据的方法分析
2017/12/04 Python
Python使用分布式锁的代码演示示例
2018/07/30 Python
Django使用paginator插件实现翻页功能的实例
2018/10/24 Python
Python 可变类型和不可变类型及引用过程解析
2019/09/27 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
2020/03/06 Python
运行Python编写的程序方法实例
2020/10/21 Python
开会迟到检讨书
2014/02/03 职场文书
摄影专业毕业生求职信
2014/08/05 职场文书
维稳承诺书
2015/01/20 职场文书
应届毕业生的自我评价
2019/06/21 职场文书
创业计划书之游泳馆
2019/09/16 职场文书