1. 程式人生 > >JavaScript 和 CSS3 做出轉盤抽獎效果

JavaScript 和 CSS3 做出轉盤抽獎效果

ace line tex lse 如果 play wid text height

首先是HTML代碼

	<p id="text">您還剩余3次機會</p>
	<div class="box">
		<img src="./img/lanren.png" >
		<div class="btn btn1"></div>
		<div class="btn2 btn"></div>
	</div>

 然後是CSS代碼

        body{
      padding: 0;
      margin: 0;
     } .box{
        width: 640px
; height: 640px; border-radius: 50%; margin: 150px auto; position: relative; } img{ width: 100%; height: 100%; transform: rotateZ(0deg); transition: all 2s; } .btn{ position
: absolute; width: 190px; height: 220px; background-image: url("./img/arrow.png"); background-repeat: no-repeat; background-position: -30px 0; top: 50%; left: 50%; margin-left: -95px; margin-top: -110px
; } .btn2{ background-position: -281px 0; display: none; } p{ width: 100%; height: 40px; line-height: 40px; text-align: center; font-size: 20px; color: #facebf; }

最後加JS代碼

 1         //初始化一個角度
 2         var x = 0;
 3         //定義一共能抽獎多少次
 4         var a = 3;
 5         //獲取需要的dom元素
 6         var text = document.getElementById("text");
 7         var btn1 = document.getElementsByClassName(‘btn1‘)[0];
 8         var btn2 = document.getElementsByClassName(‘btn2‘)[0];
 9         var img = document.getElementsByTagName(‘img‘)[0];
10         //定義一個隨機數  在下面使用
11         function random(a,b){
12             return Math.floor(Math.random()*(b-a))+a;               
13         }
14         //點擊按鈕時  執行事件  首先a-1  然後再隨機得到一個角度數字  然後再賦值給img元素  最後再執行一個回調函數 如果直接把回調函數裏面的代碼將會出現BUG 但是我不知道什麽情況    由這個回調函數來判斷還有幾次抽獎機會
15         btn1.onclick=function(){
16             a-=1;
17             x += parseInt(random(10, 30) * 60);
18       img.style.transform = "rotateZ(" + x + "deg)";
19             qq(a);
20 
21         }
22         function qq(x){
23             text.innerHTML=`您還有${x}次機會`;
24             if(x==0){  //如果次數等於0  則不執行任何事件
25                 text.innerHTML=`您還有0次機會`;
26                 btn1.onclick=function(){
27                     return false;
28                 }
29             }
30         }    

JavaScript 和 CSS3 做出轉盤抽獎效果