Rumah >hujung hadapan web >tutorial js >Melaksanakan penjanaan nombor rawak loteri berdasarkan kemahiran javascript (versi dinaik taraf)_javascript

Melaksanakan penjanaan nombor rawak loteri berdasarkan kemahiran javascript (versi dinaik taraf)_javascript

WBOY
WBOYasal
2016-05-16 15:20:321194semak imbas

Contoh dalam artikel ini menerangkan cara menggunakan JavaScript untuk mendapatkan kod terperinci untuk tatasusunan rawak dalam tiket loteri Ia dikongsi dengan semua orang untuk rujukan anda. Kandungan khusus adalah seperti berikut

Rendering:

Kod khusus:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Math.random方法彩票随机数的生成-升级版</title>
  <style type="text/css">
   *{
     margin: 0;
     padding: 0;
   }
   .wrap{
     width: 600px;
     height: 300px;
     background-color: #f8e2e2;
     margin: 0 auto;
   }
   .list{
     width: 440px;
     /*border: 1px solid red;*/
     margin: 0px auto;
   }
   .list li{
      list-style: none;
      width: 30px;
      height: 30px;
      display: inline-block;
      border: 1px solid #fff;
      border-radius: 30px;
      line-height: 30px;
      text-align: center;
      margin: 15px auto 15px;
      /*background-color: #f8f8f8;*/
      /*background-color: rgba(255,255,255,1);*/
   }
   .wrap p{
     text-align: center;
   }
   .wrap p button{
     text-align: center;
     width: 100px;
   }
   #setBtn{
     background-color: red;
     color: #fff;
     border: none;
   }
   .active{
     background-color: red;
     color: #fff;
   }
  </style>
</head>
<body>
    <div class="wrap" id="wrap">
       <ul class="list">
         <li>01</li>
         <li>02</li>
         <li>03</li>
         <li>04</li>
         <li>05</li>
         <li>06</li>
         <li>07</li>
         <li>08</li>
         <li>09</li>
         <li>10</li>
         <li>11</li>
         <li>12</li>
         <li>13</li>
         <li>14</li>
         <li>15</li>
         <li>16</li>
         <li>17</li>
         <li>18</li>
         <li>19</li>
         <li>20</li>
         <li>21</li>
         <li>22</li>
         <li>23</li>
         <li>24</li>
         <li>25</li>
         <li>26</li>
         <li>27</li>
         <li>28</li>
         <li>29</li>
         <li>30</li>
         <li>31</li>
         <li>32</li>
         <li>33</li>
       </ul>
       <p>
         <button id="setBtn">随机红球</button>
        <button id="clearBtn">清空</button>
       </p>
    </div>
    <script type="text/javascript">
       var ballList = document.getElementById("wrap").getElementsByTagName("li");
       var setBtn =document.getElementById("setBtn");
       var clearBtn =document.getElementById("clearBtn");
       //定义随机数组
       function rnd(min, max) {
       return parseInt(Math.random()*(max - min + 1) + min);
     }
     function rndArray(min, max, length) {
    //先定义一个空数组
    var arr = [];
    //生成一个长度为7的数组
    while(arr.length < length) {
      //生成一个随机数
      var rand = rnd(min, max);
      //判断生成的随机数rand是否在数组arr里,果然不在,就将这个随机数插入到数组里,如果在,执行下一次循环
      if(arr.indexOf(rand) == -1) {
        arr.push(rand);
      }
    }
    arr.sort(function(a, b){return a - b;})
    return arr;
  }

  function selectBall() {
    for(var j = 0; j < ballList.length; j++) {
      ballList[j].className = "";  
    }
    var arr = rndArray(1,33,7);
    // console.log(arr);
    for(var i = 0; i < arr.length; i++) {
      ballList[arr[i]-1].className = "active";
    }
  }
  var timer = 0;
  setBtn.onclick = function() {
    clearTimeout(timer);
    timer = setInterval(selectBall,100);
    setTimeout(function() {  
      clearTimeout(timer);
    },3000)
    // clearTimeout(timer);
  }

  clearBtn.onclick = function() {
    clearTimeout(timer);
    for(var j = 0; j < ballList.length; j++) {
      ballList[j].className = "";  
    }
  }
    </script>
</body>
</html>
Di atas adalah kandungan terperinci artikel ini saya harap ia akan membantu semua orang dalam mempelajari pengaturcaraan javascript.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn