麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

使用jQuery Rotare實現微信大轉盤抽獎功能

2019-11-20 09:39:51
字體:
來源:轉載
供稿:網友

很多公司到了年底都會做一些抽獎活動來刺激、吸引、粘住客戶,比如抽獎轉盤活動。

前幾天用一個jqueryRotate插件實現了轉盤的效果。比起那些很炫麗的flash是稍遜點,但也基本實現了需求

效果圖:

http://files.VeVB.COm/file_images/article/201606/201606200933561.png

實現這個其實蠻簡單的,轉動的效果用的jqueryRotate插件,所以只要判斷每個獎薦對應的角度,然后設置指針的轉動角度就可以了。比如關鍵的是jqueryRotate這個插件的用法。

jqueryRotate的資料:

支持Internet Explorer 6.0+ 、Firefox 2.0 、Safari 3 、Opera 9 、Google Chrome,高級瀏覽器下使用Transform,低版本ie使用VML實現

google code地址:http://code.google.com/p/jqueryrotate/

調用和方法:

$(el).rotate({      angle:0, //起始角度     animateTo:180, //結束的角度     duration:500, //轉動時間     callback:function(){}, //回調函數     easing: $.easing.easeInOutExpo //定義運動的效果,需要引用jquery.easing.min.js的文件  })

$(el).rotate(45); //直接這樣子調用的話就是變換角度

$(el).getRotateAngle(); //返回對象當前的角度

$(el).stopRotare(); //停止旋轉動畫

另外可以更方便的通過調用$(el).rotateRight()和$(el).rotateLeft()來分別向右旋轉90度和向左旋轉90度。

很簡單吧,各種example可以看這里:http://code.google.com/p/jqueryrotate/wiki/Examples

下面是用jqueryRotate實現的抽獎轉盤頁面:

<!doctype html><html><head><meta charset="utf-8"><title>轉盤</title><style> *{padding:0;margin:0} body{  text-align:center } .ly-plate{  position:relative;  width:509px;  height:509px;  margin: 50px auto; } .rotate-bg{  width:509px;  height:509px;  background:url(ly-plate.png);  position:absolute;  top:0;  left:0 } .ly-plate div.lottery-star{  width:214px;  height:214px;  position:absolute;  top:150px;  left:147px;  /*text-indent:-999em;  overflow:hidden;  background:url(rotate-static.png);  -webkit-transform:rotate(0deg);*/  outline:none } .ly-plate div.lottery-star #lotteryBtn{  cursor: pointer;  position: absolute;  top:0;  left:0;  *left:-107px }</style></head><body> <div class="ly-plate">  <div class="rotate-bg"></div>  <div class="lottery-star"><img src="rotate-static.png" id="lotteryBtn"></div> </div></body><script src="jquery-1.7.2.min.js"></script><script src="jQueryRotate.2.2.js"></script><script>$(function(){ var timeOut = function(){ //超時函數  $("#lotteryBtn").rotate({   angle:0,    duration: 10000,    animateTo: 2160, //這里是設置請求超時后返回的角度,所以應該還是回到最原始的位置,2160是因為我要讓它轉6圈,就是360*6得來的   callback:function(){    alert('網絡超時')   }  });  };  var rotateFunc = function(awards,angle,text){ //awards:獎項,angle:獎項對應的角度,text:提示文字  $('#lotteryBtn').stopRotate();  $("#lotteryBtn").rotate({   angle:0,    duration: 5000,    animateTo: angle+1440, //angle是圖片上各獎項對應的角度,1440是我要讓指針旋轉4圈。所以最后的結束的角度就是這樣子^^   callback:function(){    alert(text)   }  });  };  $("#lotteryBtn").rotate({   bind:    {    click: function(){    var time = [0,1];     time = time[Math.floor(Math.random()*time.length)];    if(time==0){     timeOut(); //網絡超時    }    if(time==1){     var data = [1,2,3,0]; //返回的數組      data = data[Math.floor(Math.random()*data.length)];     if(data==1){      rotateFunc(1,157,'恭喜您抽中的一等獎')     }     if(data==2){      rotateFunc(2,247,'恭喜您抽中的二等獎')     }     if(data==3){      rotateFunc(3,22,'恭喜您抽中的三等獎')     }     if(data==0){      var angle = [67,112,202,292,337];       angle = angle[Math.floor(Math.random()*angle.length)]      rotateFunc(0,angle,'很遺憾,這次您未抽中獎')     }    }   }   }    }); })</script></html>

這里的time跟data是要從后臺獲取的,但這里只是靜態頁面,所以我就利用了random隨機數來盡量模擬抽獎的過程了。

time參數表示從后臺請求是否成功,0是請求超時,1是請求成功(成功后再判斷返回的值是什么樣);

data就是請求返回的數據,1,2,3表示一二三等獎,0是不中獎,根據返回的數據,再去設置指針旋轉的角度。

因為這個圖片上的角度無法用公式計算出來,所以只能這樣子計算出來后定死。

如果比較規則的話,應該可以用公式計算。

其實難得不在前臺,別人寫好的插件,我們拿來用就好,真正難的是在后臺,定一個什么樣的規則,搞一個什么樣的算法,大家去思考去吧~~呵呵~~

點擊下載完整DEMO

以上就是本文的全部內容,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄色高清免费 | 黄污网站在线 | 精品亚洲视频在线 | 成人毛片视频免费看 | 国产精品免费小视频 | 小视频免费在线观看 | 一级免费黄色免费片 | fc2成人免费人成在线观看播放 | 国产成人精品一区二区仙踪林 | 国产91成人 | av在线电影网站 | 一级毛片免费一级 | 日韩一级毛毛片 | 成人性生活视频在线观看 | 最新在线中文字幕 | 色戒在线版 | 丁香天堂网| japanesexxxxxxxhd| av在线不卡免费 | 久久久久久久久成人 | 免费在线观看亚洲 | 久久www视频 | 国产成人免费精品 | 91九色网址 | 久久国产精品久久精品国产演员表 | 成人免费影院 | 99re66热这里只有精品8 | 久久久久久久久久久国产精品 | 日韩视频一区在线 | 日韩午夜一区二区三区 | 一级黄色淫片 | av国产免费 | 免费a级毛片大学生免费观看 | 欧美xxxxx视频 | 一级毛片在线免费观看视频 | 亚洲精品久久久久久下一站 | 久久久日韩精品一区二区 | 视频在线中文字幕 | 日本一级黄色大片 | 日韩大片在线永久观看视频网站免费 | 日韩美香港a一级毛片 |