仿QQ绿钻抽奖转盘
简介
腾讯心悦会员的一个活动,抽奖转盘做的不错,同样,还是使用 jQuery旋转插件jqueryrotate 制作。由于 IE9 以下的版本 jqueryrotate 只支持 img 标签,所以这次换成了 img 标签,但只可以转动一次,因为已经改变了 DOM,原来的对象已经没有了。
制作方法
1、引入文件
<script src="js/jquery.min.js"></script> <script src="js/jquery.rotate.min.js"></script>
2、HTML
<div class="dowebok"> <div class="rotary"> <img class="hand" src="images/z.png" alt=""> </div> <div class="list"> <strong>100%中奖</strong> <h4>中奖用户名单</h4> <ul> <li> <span>154**88</span> <span>获得1个月绿钻</span> </li> <li> <span>6161***034</span> <span>获得11个月绿钻</span> </li> <li> <span>2349***224</span> <span>获得1个月绿钻</span> </li> <li> <span>433***54</span> <span>获得2个月绿钻</span> </li> <li> <span>5154***234</span> <span>获得4个月绿钻</span> </li> <li> <span>3213***123</span> <span>获得2个月绿钻</span> </li> <li> <span>898****362</span> <span>获得9个月绿钻</span> </li> </ul> </div> </div>
3、CSS
* { margin: 0; padding: 0; } body { font-family: "Microsoft Yahei"; background-color: #15734b; } h1 { width: 900px; margin: 40px auto; font: 32px "Microsoft Yahei"; text-align: center; color: #fff; } .dowebok { width: 894px; height: 563px; margin: 0 auto; background-image: url(images/s3_bg.png); } .rotary { position: relative; float: left; width: 504px; height: 504px; margin: 20px 0 0 20px; background-image: url(images/g.png); } .hand { position: absolute; left: 144px; top: 144px; width: 216px; height: 216px; cursor: pointer; } .list { float: right; width: 300px; padding-top: 44px; } .list strong { position: relative; left: -45px; display: block; height: 65px; line-height: 65px; font-size: 32px; color: #ffe63c; } .list h4 { height: 45px; margin: 30px 0 10px; line-height: 45px; font-size: 24px; color: #fff; } .list ul { line-height: 36px; list-style-type: none; font-size: 12px; color: #fff; } .list span { display: inline-block; width: 94px; }
4、JavaScript
$(function(){ var $hand = $('.hand'); $hand.click(function(){ var data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; data = data[Math.floor(Math.random()*data.length)]; switch(data){ case 1: rotateFunc(1,16,'恭喜你抽中了1个月绿钻'); break; case 2: rotateFunc(2,47,'恭喜你抽中了2个月绿钻'); break; case 3: rotateFunc(3,76,'恭喜你抽中了3个月绿钻'); break; case 4: rotateFunc(4,106,'恭喜你抽中了4个月绿钻'); break; case 5: rotateFunc(5,135,'恭喜你抽中了5个月绿钻'); break; case 6: rotateFunc(6,164,'恭喜你抽中了6个月绿钻'); break; case 7: rotateFunc(7,193,'恭喜你抽中了7个月绿钻'); break; case 8: rotateFunc(7,223,'恭喜你抽中了8个月绿钻'); break; case 9: rotateFunc(7,252,'恭喜你抽中了9个月绿钻'); break; case 10: rotateFunc(7,284,'恭喜你抽中了10个月绿钻'); break; case 11: rotateFunc(7,314,'恭喜你抽中了11个月绿钻'); break; case 12: rotateFunc(7,345,'恭喜你抽中了12个月绿钻'); break; } }); var rotateFunc = function(awards,angle,text){ $hand.stopRotate(); $hand.rotate({ angle: 0, duration: 5000, animateTo: angle + 1440, callback: function(){ alert(text); } }); }; });
标签:抽奖