Попытка создать колесо рулетки с css и javascript - PullRequest
0 голосов
/ 22 апреля 2020

Я создал колесо рулетки с css и javascript.

Я разделил углы следующим образом: 360/37 (так как есть 37 чисел) без каких-либо стилей, которые я мог бы иметь все числа в круге. Я только что изменил цвет фона на нечетный и четный. Но последнее число выглядит намного больше? Пожалуйста, может кто-нибудь сказать мне, где я иду не так.

    <div class="wrapper">
  <button id="cta">button</button>
  <button id="reset">reset</button>
  <div class="table-wrapper" data-result="1">
    <ul id="table">




    </ul>



  </div>

</div



    *{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

.wrapper{
  width:500px;
  height:500px;
  margin:400px auto;

 }

 li:nth-child(odd){
   background:red;

}
li:nth-child(even){
  background:black;

}

li:first-child {
   background:green;
  border-left:10px solid green;
 }



#reset{
  position:absolute;
  top:50px;

}

.table-wrapper{
  width:350px;
  height:350px;
  position:relative;
  border-radius:50%;
  border:1px solid black;

}

#table{
  width:350px;
  height:350px;
  position:absolute;
  text-align:center;
  border:4px solid blue;
  text-align:center;
  border-radius:50%;
  overfow:hidden;
}

.number {
position:absolute;
color:#fff;
 width:34px;
  height:200px;
  margin-left:47%;
list-style:none;
transform: translate(50%, -50%);
      transform-origin: bottom;

}
input{
  display:none;
}

[data-result='7'] #table::after{
  animation:one 5s ease-out;
  animation-fill-mode: forwards;



}

#table::after{
  display:none;
   content:'\2022';
  position:absolute;
  height:200px;
  width:200px;
  border:1px solid yellow;
  top:-300px;
  left:100px;
  background:gray;
  border-radius:50%;
/*   animation:spin 5s ease-out; */

}

@keyframes one{
   0%{
    transform:rotate(0deg);
  }
    100%{

    transform:rotate(778deg);

  }


}
@keyframes spin{
  0%{
    transform:rotate(0deg);
  }

  100%{
    transform:rotate(360deg);
  }
}





    let numberArray=['0','26', '3','35', '12', '28', '7', '29', '18', '22', '9','31', '14', '20', '1', '33', '16', '24', '5', '10', '23', '8', '30', '11', '36', '13', '27', '6', '34', '17', '25', '2', '21', '4', '19', '15','32']

let tableWrapper = document.querySelector('.table-wrapper');
let table =document.getElementById('table');
let randomNumber = Math.floor(Math.random()*36);
console.log(randomNumber)


for(var i=0;i<numberArray.length;i++){
  table.innerHTML+=`<li class=number number${numberArray[i]}     style="transform:rotate(${i*9.729}deg)"><label> <input type="radio" value= ${i}> </label><span> ${numberArray[i]}</span></li>`;
}

let cta = document.getElementById('cta');
cta.addEventListener('click',()=>{

  tableWrapper.setAttribute('data-result', '7');


})

let reset = document.getElementById('reset');

reset.addEventListener('click',()=>{

  tableWrapper.setAttribute('data-result', '0');
})

https://codepen.io/leecocky/pen/JjYRrKd

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...