html>
抽奖效果演示
.rotary { position: relative; width: 854px; height: 504px; margin: 0 auto; background: #d71f2e url(p_w_picpaths/bg1.png);}
.rotaryArrow { position: absolute; left: 181px; top: 104px; width: 294px; height: 294px; cursor: pointer; background-p_w_picpath: url(p_w_picpaths/arrow.png);}
.list { position: absolute; right: 48px; top: 144px; width: 120px; height: 320px; overflow: hidden;}
.list h3 { display: none;}
.list ul { list-style-type: none;}
.list li { height: 37px; font: 14px/37px "Microsoft Yahei"; color: #ffea76; text-indent: 25px; background: url(p_w_picpaths/user.png) 0 no-repeat;}
.result { display: none; position: absolute; left: 130px; top: 190px; width: 395px; height: 118px; background-color: rgba(0,0,0,0.75); filter: alpha(opacity=90);}
.result a { position: absolute; right: 5px; top: 5px; width: 25px; height: 25px; text-indent: -100px; background-p_w_picpath: url(p_w_picpaths/close.png); overflow: hidden;}
.result p { padding: 45px 15px 0; font: 16px "Microsoft Yahei"; color: #fff; text-align: center;}
.result em { color: #ffea76; font-style: normal;}
抽奖效果演示
$(function(){
var $rotaryArrow = $('#rotaryArrow');
var $result = $('#result');
var $resultTxt = $('#resultTxt');
var $resultBtn = $('#result');
$rotaryArrow.click(function(){
var lottery_flag = 0;
/**
* 数组 lottery为中奖概率数组
*
* 中奖概率:
* 0-不中奖:20%
* 1-1元代金券:35%
* 2-5元代金券:20%
* 3-10元代金券:12%
* 4-20元代金券:8%
* 5-50元代金券:1%
* 6-30元代金券:4%
*/
var lottery = [5,3,5,8,12,100,25];
var data = [0, 1, 2, 3, 4, 5, 6];
for (i=0;i
if (Math.floor(Math.random()*lottery[i]) == 1){
lottery_flag = data[i];
break;
}
}
var flag = 177; //设置未中奖的默认角度
var date = new Date();
var seconds = date.getSeconds();
if(seconds % 2 == 0){
//根据时间秒数是否被2整除,模拟未中奖时指针对两个未中奖角度的随机
flag = 0;
}
switch(lottery_flag){
case 1:
rotateFunc(1,87,'恭喜您获得了 1 元代金券');
break;
case 2:
rotateFunc(2,43,'恭喜您获得了 5 元代金券');
break;
case 3:
rotateFunc(3,134,'恭喜您获得了 10 元代金券');
break;
case 4:
rotateFunc(5,223,'恭喜您获得了 20 元代金券');
break;
case 5:
rotateFunc(6,268,'恭喜您获得了 50 元代金券');
break;
case 6:
rotateFunc(7,316,'恭喜您获得了 30 元代金券');
break;
default:
rotateFunc(0,flag,'很遗憾,这次您未抽中奖,继续加油吧');
}
});
var rotateFunc = function(awards,angle,text){ //awards:奖项,angle:奖项对应的角度
$rotaryArrow.stopRotate();
$rotaryArrow.rotate({
angle: 0,
duration: 5000,
animateTo: angle + 1440, //angle是图片上各奖项对应的角度,1440是让指针固定旋转4圈
callback: function(){
$resultTxt.html(text);
$result.show();
}
});
};
$resultBtn.click(function(){
$result.hide();
});
});
* { margin: 0; padding: 0;}
body { font-family: Consolas,arial,"宋体";}
h1 { width: 900px; margin: 40px auto; font: 32px "Microsoft Yahei"; text-align: center;}
.explain, .dowebok-explain { margin-top: 20px; font-size: 14px; text-align: center; color: #f50;}
.vad { margin: 50px 0 5px; font-family: Consolas,arial,宋体; text-align:center;}
.vad a { display: inline-block; height: 36px; line-height: 36px; margin: 0 5px; padding: 0 50px; font-size: 14px; text-align:center; color:#eee; text-decoration: none; background-color: #222;}
.vad a:hover { color: #fff; background-color: #000;}
.thead { width: 728px; height: 90px; margin: 0 auto; border-bottom: 40px solid #fff;}
.code { position: relative; margin-top: 100px; padding-top: 41px;}
.code h3 { position: absolute; top: 0; z-index: 10; width: 100px; height: 40px; font: 16px/40px "Microsoft Yahei"; text-align: center; cursor: pointer;}
.code .cur { border: 1px solid #f0f0f0; border-bottom: 1px solid #f8f8f8; background-color: #f8f8f8;}
.code .h31 { left: 0;}
.code .h32 { left: 102px;}
.code .h33 { left: 204px;}
.code .h34 { left: 306px;}
.code { width: 900px; margin-left: auto; margin-right: auto;}
pre { padding: 15px 0; border: 1px solid #f0f0f0; background-color: #f8f8f8;}
.f-dn { display: none;}