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 相关文章推荐
javascript  Error 对象 错误处理
May 18 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 Javascript
JS获取url链接字符串 location.href
Dec 23 Javascript
使用POST方式弹出窗口的两种方法示例介绍
Jan 29 Javascript
jQuery中ajax的get()方法用法实例
Dec 26 Javascript
js限制input标签中只能输入中文
Jun 26 Javascript
JavaScript对象数组如何按指定属性和排序方向进行排序
Jun 15 Javascript
jquery.Jcrop结合JAVA后台实现图片裁剪上传实例
Nov 05 Javascript
微信小程序 表单Form实例详解(附源码)
Dec 22 Javascript
纯原生js实现table表格的增删
Jan 05 Javascript
详解Angular路由 ng-route和ui-router的区别
May 22 Javascript
vue2.0 子组件改变props值,并向父组件传值的方法
Mar 01 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
Win下如何安装PHP的APC拓展
2013/08/07 PHP
php实现数组筛选奇数和偶数示例
2014/04/11 PHP
CodeIgniter辅助之第三方类库third_party用法分析
2016/01/20 PHP
详细对比php中类继承和接口继承
2018/10/11 PHP
Jquery实现控件的隐藏和显示实例
2014/02/08 Javascript
javascript使用正则表达式实现去掉空格之后的字符
2015/02/15 Javascript
js控制元素显示在屏幕固定位置及监听屏幕高度变化的方法
2015/08/11 Javascript
jQuery事件的绑定、触发、及监听方法简单说明
2016/05/10 Javascript
页面向下滚动ajax获取数据的实现方法(兼容手机)
2016/05/24 Javascript
JavaScript中instanceof运算符的使用示例
2016/06/08 Javascript
jquery mobile 实现自定义confirm确认框效果的简单实例
2016/06/17 Javascript
使用JavaScript根据图片获取条形码的方法
2017/07/04 Javascript
AngularJS实现的输入框字数限制提醒功能示例
2017/10/26 Javascript
js通过Date对象实现倒计时动画效果
2017/10/27 Javascript
jQuery+datatables插件实现ajax加载数据与增删改查功能示例
2018/04/17 jQuery
原生JS+HTML5实现跟随鼠标一起流动的粒子动画效果
2018/05/03 Javascript
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
element中的$confirm的使用
2020/04/26 Javascript
Python pymongo模块常用操作分析
2018/09/01 Python
pyqt5实现俄罗斯方块游戏
2019/01/11 Python
python实现Excel文件转换为TXT文件
2019/04/28 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
2019/07/06 Python
Python实现扫码工具的示例代码
2020/10/09 Python
python3实现语音转文字(语音识别)和文字转语音(语音合成)
2020/10/14 Python
使用html2canvas实现将html内容写入到canvas中生成图片
2020/01/03 HTML / CSS
无工作经验者个人求职信范文
2013/12/22 职场文书
思想汇报格式
2014/01/05 职场文书
试用期转正鉴定评语
2014/01/27 职场文书
大学共青团员个人自我评价
2014/04/16 职场文书
2014年安全生产目标责任书
2014/07/23 职场文书
2014年库房工作总结
2014/11/26 职场文书
2014个人年度工作总结范文
2014/12/24 职场文书
二手车转让协议书
2015/01/29 职场文书
公司清洁工岗位职责
2015/04/15 职场文书
中秋节随笔
2015/08/15 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL