js实现抽奖效果

发布时间 - 2026-01-11 00:23:17    点击率:

效果图:

代码如下:

<!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>

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


# js实现抽奖  # js抽奖效果  # 原生JS实现九宫格抽奖效果  # js轮盘抽奖实例分析  # javascript+HTML5 Canvas绘制转盘抽奖  # 基于javascript实现简单的抽奖系统  # js实现网页抽奖实例  # js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS  # js抽奖实现随机抽奖代码效果  # JS模拟抽奖序效果实现代码  # js实现大转盘抽奖游戏实例  # javascript 随机抽奖程序代码  # js实现按座位号抽奖  # 华为  # 行间  # 随机数  # 恭喜你  # 下表  # 魅族  # 行数  # 酷派  # 获得了  # px  # height  # width  # border  # js  # ks  # jp  # tomato  # CD5C5C  # solid  # hover 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: php json中文编码为null的解决办法  javascript中对象的定义、使用以及对象和原型链操作小结  如何快速搭建自助建站会员专属系统?  Java类加载基本过程详细介绍  html如何与html链接_实现多个HTML页面互相链接【互相】  如何为不同团队 ID 动态生成多个独立按钮  如何基于云服务器快速搭建个人网站?  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel怎么使用Session存储数据_Laravel会话管理与自定义驱动配置【详解】  Python文件异常处理策略_健壮性说明【指导】  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  JavaScript常见的五种数组去重的方式  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  香港服务器选型指南:免备案配置与高效建站方案解析  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  如何快速搭建高效WAP手机网站吸引移动用户?  Python3.6正式版新特性预览  Java解压缩zip - 解压缩多个文件或文件夹实例  Python结构化数据采集_字段抽取解析【教程】  C#如何调用原生C++ COM对象详解  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  如何在新浪SAE免费搭建个人博客?  敲碗10年!Mac系列传将迎来「触控与联网」双革新  三星网站视频制作教程下载,三星w23网页如何全屏?  如何快速搭建支持数据库操作的智能建站平台?  如何在腾讯云服务器上快速搭建个人网站?  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  iOS UIView常见属性方法小结  浅述节点的创建及常见功能的实现  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Android仿QQ列表左滑删除操作  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  php打包exe后无法访问网络共享_共享权限设置方法【教程】  如何用西部建站助手快速创建专业网站?  如何破解联通资金短缺导致的基站建设难题?  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  Android okhttputils现在进度显示实例代码  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Python函数文档自动校验_规范解析【教程】  如何在云指建站中生成FTP站点?  如何在阿里云服务器自主搭建网站?  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法